Сортировка списка по алфавиту и по числам
У каждого списка есть метод sort(). Если не указать иное, он располагает элементы по алфавиту или по числам, в порядке возрастания.
Пример
Расположите строки в алфавитном порядке:
Вывод: полная программа на Python
thislist = ["orange", "mango", "kiwi", "pineapple", "banana"]
thislist.sort()
print(thislist)
Пример
Расположите числа в порядке возрастания:
Вывод: полная программа на Python
thislist = [100, 50, 65, 82, 23]
thislist.sort()
print(thislist)
Сортировка по убыванию
Для сортировки по убыванию передайте именованный аргумент reverse = True.
Пример
Отсортируйте строки по убыванию:
Вывод: полная программа на Python
thislist = ["orange", "mango", "kiwi", "pineapple", "banana"]
thislist.sort(reverse = True)
print(thislist)
Пример
Отсортируйте числа по убыванию:
Вывод: полная программа на Python
thislist = [100, 50, 65, 82, 23]
thislist.sort(reverse = True)
print(thislist)
Своя функция сортировки
Сортировка может следовать и вашему собственному правилу: передайте функцию с помощью именованного аргумента key = function.
Эта функция возвращает значение для каждого элемента, а элементы располагаются по этим значениям, начиная с наименьшего.
Пример
Упорядочите числа по их расстоянию от 50:
Вывод: полная программа на Python
def myfunc(n):
return abs(n - 50)
thislist = [100, 50, 65, 82, 23]
thislist.sort(key = myfunc)
print(thislist)
Сортировка без учёта регистра
По умолчанию sort() учитывает регистр, поэтому любая заглавная буква идёт перед любой строчной.
Пример
Сортировка с учётом регистра может вас удивить:
Вывод: полная программа на Python
thislist = ["banana", "Orange", "Kiwi", "cherry"]
thislist.sort()
print(thislist)
Пример
Отсортируйте список без учёта регистра:
Вывод: полная программа на Python
thislist = ["banana", "Orange", "Kiwi", "cherry"]
thislist.sort(key = str.lower)
print(thislist)
Обратный порядок
Иногда нужно просто перевернуть элементы, независимо от их алфавитного порядка.
Именно это делает метод reverse(): он меняет текущий порядок элементов на обратный.
Пример
Измените порядок элементов на обратный:
Вывод: полная программа на Python
thislist = ["banana", "Orange", "Kiwi", "cherry"]
thislist.reverse()
print(thislist)