Функция sorted - отсортированный список из итерируемых объектов на Python
Функция sorted
возвращает
отсортированный список из итерируемых
объектов - списка, кортежа, множества,
словаря. По умолчанию функция
сортирует элементы
списка по алфавиту или в порядке
возрастания.
В первом параметре указывается объект для сортировки.
Во втором необязательном параметре
метода можно указать параметр reverse
,
задающий направление сортировки.
По умолчанию он имеет значение
False
.
Во третьем необязательном параметре можно указать функцию-коллбэк с критериями сортировки.
Синтаксис
sorted(объект, [режим переворота списка], [функция для сортировки])
Пример
Давайте отсортируем наш список в обратном порядке:
lst1 = ['c', 'a', 'd', 'b', 'f', 'e']
lst2 = sorted(lst1, reverse=True)
print(lst2)
Результат выполнения кода:
['f', 'e', 'd', 'c', 'b', 'a']
Пример
А теперь отсортируем в обратном порядке список, состоящий из цифр:
lst1 = [10, 8, 2, 6, 14]
lst2 = sorted(lst1, reverse=True)
print(lst2)
Результат выполнения кода:
[14, 10, 8, 6, 2]
Пример
Давайте отсортируем наш список
из букв без указания параметра в
функции sorted
:
lst1 = ['c', 'a', 'd', 'b', 'f', 'e']
lst2 = sorted(lst1)
print(lst2)
Результат выполнения кода:
['a', 'b', 'c', 'd', 'e', 'f']
Пример
А теперь отсортируем и список, состоящий из цифр:
lst1 = [10, 8, 2, 6, 14]
lst2 = sorted(lst1)
print(lst2)
Результат выполнения кода:
[2, 6, 8, 10, 14]
Пример
Давайте отсортируем множество:
st = {'a', 'b', 'c', 'd', 'e', 'f'}
lst = sorted(st)
print(lst)
Результат выполнения кода:
['a', 'b', 'c', 'd', 'e', 'f']
Пример
Давайте отсортируем кортеж:
tpl = ('a', 'b', 'c', 'd', 'e', 'f')
lst = sorted(tpl)
print(lst)
Результат выполнения кода:
['a', 'b', 'c', 'd', 'e', 'f']
Пример
Давайте отсортируем словарь:
dct = {
'6': 'f',
'2': 'b',
'4': 'd',
'3': 'c',
'1': 'a',
'5': 'e'
}
lst = sorted(dct)
print(lst)
После выполнения кода функция вернет нам отсортированный список ключей словаря:
['1', '2', '3', '4', '5', '6']
Пример
Также с помощью функции sorted
можно отсортировать и строку:
str = 'dacbfe'
lst = sorted(str)
print(lst)
Но после выполнения нам также вернется отсортированный список:
['a', 'b', 'c', 'd', 'e', 'f']