Sort List – Quick and Effective List Sorting Made Easy
Отсортировать список можно с помощью метода sort(), который изменяет порядок элементов в списке, либо с помощью функции sorted(), которая возвращает отсортированную копию исходного списка. В зависимости от задачи, можно выбрать один из подходов.
Пример использования метода sort():
numbers = [3, 1, 4, 1, 5, 9, 2, 6, 5, 3, 5]
numbers.sort()
print(numbers)
Результат выполнения программы будет:
[1, 1, 2, 3, 3, 4, 5, 5, 5, 6, 9]
Пример использования функции sorted():
numbers = [3, 1, 4, 1, 5, 9, 2, 6, 5, 3, 5]
sorted_numbers = sorted(numbers)
print(sorted_numbers)
Результат выполнения программы будет:
[1, 1, 2, 3, 3, 4, 5, 5, 5, 6, 9]
При использовании функции sorted() можно передать дополнительный аргумент key, который указывает функцию для определения ключа сортировки. Например, чтобы отсортировать список чисел по абсолютному значению, можно написать такой код:
numbers = [-3, 1, -4, 1, 5, 9, -2, 6, -5, 3, 5]
sorted_numbers = sorted(numbers, key=abs)
print(sorted_numbers)
Результат выполнения программы будет:
[1, 1, -2, 3, -3, 4, 5, 5, -5, 6, 9]
Этот же подход можно использовать с методом sort():
numbers = [-3, 1, -4, 1, 5, 9, -2, 6, -5, 3, 5]
numbers.sort(key=abs)
print(numbers)
Результат выполнения программы будет таким же, как в предыдущем примере.
Если нужна сортировка в обратном порядке, можно передать дополнительный аргумент reverse=True. Например:
numbers = [3, 1, 4, 1, 5, 9, 2, 6, 5, 3, 5]
numbers.sort(reverse=True)
print(numbers)
Результат выполнения программы будет таким:
[9, 6, 5, 5, 5, 4, 3, 3, 2, 1, 1]
Также можно использовать функцию reversed() для получения обратного порядка элементов в списке. Но в этом случае нужно создавать новый список или делать преобразование в итератор. Например:
numbers = [3, 1, 4, 1, 5, 9, 2, 6, 5, 3, 5]
reversed_numbers = list(reversed(numbers))
print(reversed_numbers)
Результат выполнения программы будет:
[5, 3, 5, 6, 2, 9, 5, 1, 4, 1, 3]