Энциклопедия Python:sort()

Материал из Викижурнал
Энциклопедия Python:sort()
Энциклопедия Python:sort()
Энциклопедия Python:sort()
Тематические порталы

Функция sort() в Python используется для сортировки элементов в итерируемом объекте, таком как список или кортеж. Функция изменяет сам объект, который был передан, и не возвращает новый отсортированный объект.

Использование функции

Синтаксис функции sort() выглядит следующим образом:

list.sort(key=None, reverse=False)

Здесь key и reverse являются необязательными параметрами.

Параметр key используется для указания функции, которая вызывается для каждого элемента в списке и возвращает значение, которое будет использоваться для сортировки списка. Если параметр key не указан, элементы будут сравниваться напрямую.

Параметр reverse используется для указания направления сортировки. Если параметр reverse установлен в значение True, то элементы будут сортироваться в обратном порядке.

Давайте рассмотрим пример:

my_list = [3, 1, 4, 1, 5, 9, 2, 6, 5, 3, 5]
my_list.sort()
print(my_list)  # [1, 1, 2, 3, 3, 4, 5, 5, 5, 6, 9]

В этом примере мы создали список my_list, содержащий 11 целочисленных элементов. Затем мы вызвали функцию sort() для сортировки списка в порядке возрастания и распечатали отсортированный список. Теперь рассмотрим пример с использованием параметра key:

my_list = ['apple', 'banana', 'cherry', 'date', 'elderberry', 'fig']
my_list.sort(key=lambda x: len(x))
print(my_list)  # ['fig', 'date', 'apple', 'banana', 'cherry', 'elderberry']

Здесь мы создали список my_list, содержащий шесть строковых элементов. Затем мы вызвали функцию sort() с параметром key, указав функцию lambda x: len(x), которая возвращает длину каждой строки. Это означает, что список будет отсортирован в порядке возрастания длины строк. Результатом является отсортированный список, в котором элементы расположены в порядке возрастания длины строк. Также можно использовать параметр reverse, чтобы изменить направление сортировки:

my_list = [3, 1, 4, 1, 5, 9, 2, 6, 5, 3, 5]
my_list.sort(reverse=True)
print(my_list)  # [9, 6, 5, 5, 5, 4, 3, 3, 2, 1, 1]

Здесь мы создали список my_list, содержащий 11 целочисленных элементов. Затем мы вызвали функцию sort() с параметром reverse=True, что указывает на сортировку элементов в порядке убывания. Результатом является отсортированный список, в котором элементы расположены в порядке убывания.

Другие страницы о Python