sorted в python3 — один из двух возможных способов сортировки данных в списках. Отличается от метода sort() тем, что не изменяет оригинальные данные.
Сортировка sort и sorted в python3
Для сортировки данных Python предлагает две опции. Объектом, в котором выполняется сортировка, является список (list).
1.
Метод sort() — принимает значения, меняет порядок и сохраняет заменяя ту информацию, которая существовала изначально. Изначально заданные данные изменяются и оказываются навсегда утерянными.
Для демонстрации возьмем список из чисел
>>> numbers = [5, 32, 97, 4, 11, 90]
>>> numbers.sort()
>>> numbers
[4, 5, 11, 32, 90, 97]
Начальный порядок вернуть теперь нельзя, информация, содержащаяся в переменной, перезаписана.
2.
Функция sorted() — выполняет сортировку элементов списка и сохраняет новые значения в качестве копии. Исходный список или значение исходной переменной остается в том же виде, в котором было задано.
sorted() является BIF, т.е. built in function.
>>> numbers = [5, 32, 97, 4, 11, 90]
>>> numbers2 = sorted(numbers)
>>> print (numbers)
[5, 32, 97, 4, 11, 90]
>> print (numbers2)
[4, 5, 11, 32, 90, 97]
Оба рассмотренных варианта позволяют выбирать порядок сортировки. Чтобы порядок стал убывающим передается аргумент reverse=True. По умолчанию сортировка происходит в возрастающем порядке — от меньшего значения к большему.
Сортировка по убыванию sorted() в Python3
>>> numbers2 = sorted(numbers, reverse=True)
>>> print (numbers2)
[97, 90, 32, 11, 5, 4]
Сортировка по убыванию sort()
>>> numbers.sort(reverse=True)
>>> print(numbers)
[97, 90, 32, 11, 5, 4]
Python BIF
Посмотреть все BIF можно следующим образом:
>>>dir(__builtins__)
Вызвать справку по определенной встроенной функции
>>> help(sorted)
Читайте про создание модуля в Python.