sort и sorted python 3

sorted python 3 — один из двух возможных способов сортировки данных в списках. Отличается от метода sort() тем, что не изменяет оригинальные данные.

 

Сортировка sort и sorted python 3

Для сортировки данных 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()

>>> 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.