Программа курса:
Методы списков sort(), reverse()
Что, если вам нужно упорядочить элементы списка по возрастанию или убыванию? Или, может быть, вам нужно просто перевернуть список задом наперёд? Для этого в Python есть два мощных метода: sort
и reverse
. Давайте разберём, как они работают и когда их использовать.
Сортируем элементы списка
Представьте, что у вас есть список чисел, и вы хотите расположить их по возрастанию. Или, может быть, у вас есть список слов, и вы хотите отсортировать их в алфавитном порядке. Метод sort
— это ваш помощник в этом деле. Он сортирует элементы списка на месте, то есть изменяет сам список, а не создаёт новый.
Синтаксис:
список.sort(key=None, reverse=False)
key
: Функция, которая определяет порядок сортировки. По умолчанию None
, что означает сортировку по значению элементов.
reverse
: Если True
, сортировка выполняется в обратном порядке (по убыванию). По умолчанию False
.
Сортировка чисел по возрастанию
numbers = [3, 1, 4, 1, 5, 9, 2, 6, 5]
numbers.sort()
print(numbers) # Вывод: [1, 1, 2, 3, 4, 5, 5, 6, 9]
Здесь мы отсортировали список чисел по возрастанию. Обратите внимание, что список изменился на месте.
Сортировка строк по алфавиту
fruits = ['яблоко', 'банан', 'апельсин', 'киви']
fruits.sort()
print(fruits) # Вывод: ['апельсин', 'банан', 'киви', 'яблоко']
Здесь мы отсортировали список фруктов в алфавитном порядке.
Сортировка по убыванию
numbers = [3, 1, 4, 1, 5, 9, 2, 6, 5]
numbers.sort(reverse=True)
print(numbers) # Вывод: [9, 6, 5, 5, 4, 3, 2, 1, 1]
Здесь мы отсортировали список чисел по убыванию, указав параметр reverse=True
. Теперь числа идут от большего к меньшему. Это может быть полезно, если вам нужно, например, отсортировать оценки студентов от высшей к низшей.
Сортировка с использованием ключа
words = ['яблоко', 'банан', 'апельсин', 'киви']
words.sort(key=len) # Сортировка по длине слова
print(words) # Вывод: ['киви', 'банан', 'яблоко', 'апельсин']
Здесь мы отсортировали список слов по их длине, используя параметр key=len
. Теперь слова идут от самого короткого ("киви") к самому длинному ("апельсин").
Переворачиваем список
А что, если вам нужно просто перевернуть список задом наперёд? Например, у вас есть список дел, и вы хотите увидеть их в обратном порядке. Метод reverse
позволяет сделать это легко и быстро. Он изменяет порядок элементов в списке на обратный, не создавая новый список.
список.reverse()
Пример:
tasks = ['поесть', 'поработать', 'поспать']
tasks.reverse()
print(tasks) # Вывод: ['поспать', 'поработать', 'поесть']
Здесь мы перевернули список задач. Теперь последнее дело стало первым, а первое — последним.
Когда использовать sort
и reverse
?
Чтобы лучше понять, когда и какой метод использовать, давайте разберём несколько сценариев:
sort
: Используйте, когда вам нужно упорядочить элементы списка по возрастанию, убыванию или по какому-либо другому критерию. Например, если у вас есть список чисел, и вы хотите расположить их по возрастанию, или список слов, который нужно отсортировать по алфавиту.
reverse
: Используйте, когда вам нужно просто перевернуть список задом наперёд. Например, если вы хотите увидеть список дел в обратном порядке или перевернуть список чисел для удобства.
Таблица методов списков
Для удобства вот таблица с методами, которые мы разобрали:
Метод | Описание | Пример |
---|---|---|
sort | Сортирует элементы списка на месте | numbers.sort() |
reverse | Переворачивает список задом наперёд | tasks.reverse() |
Методы sort
и reverse
— это ваши верные помощники в работе со списками в Python. С их помощью вы можете упорядочивать элементы списка по различным критериям и переворачивать список задом наперёд.