Что такое функция sort в Python?

Аватар пользователя Kirill Nagorniy
Kirill Nagorniy
18 ноября 2022

Метод sort в Python нужен для того, чтобы отсортировать элементы в списке. При этом изменяется сам список, а не возвращается новый.

Пример использования метода sort для сортировки элементов по возрастанию:

l = [1, -4, 5, 6, 2]
l.sort() # => [-4, 1, 2, 5, 6]
ls = ["c", "a", "b"]
ls.sort() # => ["a", "b", "c"]

Еще в методе есть аргумент reverse с помощью которого можно отсортировать список по убыванию:

l = [1, -4, 5, 6, 2]
l.sort(reverse=True) # => [6, 5, 2, 1, -4]

Также мы можем составить свою логику для сортировки элементов с помощью аргумента key:

# Функция вернет True, если число четное и False если нет
def is_even(number):
    return True if number % 2 == 0 else False

l = [1, -4, 5, 6, 2]
l.sort(key=is_even) # => [1, 5, -4, 6, 2]

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

И последнее, что стоит учесть, сортировка данных возможна для однотипных элементов, поэтому, например, если в списке окажутся число и строка, то возникнет ошибка.

0 0