Курс Python → Сортировка с помощью key
Функция sorted() в Python используется для сортировки элементов итерируемого объекта. По умолчанию она сортирует его по возрастанию, но можно указать параметр key, чтобы определить функцию сортировки.
Параметр key позволяет указать функцию, по которой будет производиться сортировка. Например, если у нас есть список словарей и мы хотим отсортировать его по значению определенного ключа, мы можем использовать key=lambda x: x['key'].
Если мы хотим отсортировать список объектов класса, то параметр key является обязательным. Без него будет вызвана ошибка TypeError. Например, если у нас есть класс с атрибутом name, то мы можем использовать key=lambda x: x.name.
class Person:
def __init__(self, name, age):
self.name = name
self.age = age
people = [Person('Alice', 25), Person('Bob', 30), Person('Charlie', 20)]
sorted_people = sorted(people, key=lambda x: x.age)
print([person.name for person in sorted_people]) # ['Charlie', 'Alice', 'Bob']
В приведенном примере мы создаем список объектов класса Person, сортируем его по возрасту с помощью параметра key и выводим отсортированные имена.
Другие уроки курса "Python"
- Сортировка элементов в Python
- Обработка исключений в Python
- Модуль pprint: улучшение вывода данных
- Установка и использование Virtualenv
- Поиск индекса элемента в списке
- Вывод баннеров
- Лямбда-функции в цикле
- Обработка исключений в Python 3
- Декоратор Ajax required
- Многоточие в Python
- Замена элементов в списке с помощью генераторов списков
- Транспонирование матрицы в Python
- Работа с файлами и директориями в Python.
- Именование столбцов в Python с pandas
- Использование модуля math
- Управление доступом к модулю
- Подсчет частотности элементов в Python
- CLI-инструмент howdoi
- Логические значения в Python
- Проблемы с именами переменных
- Функция zip() в Python
- Бесконечные списки в Python
- Создание словарей с defaultdict
- Замер времени выполнения кода
- Операторы сравнения в Python
- Декораторы в Python
- Преобразование строк в числа в Python
- Вызов внешних программ в Python с помощью sh
- Работа с географическими данными.
- Оператор += для объединения строк
- Оператор морж в Python 3.8
- Переопределение метода __pow__
- Работа со временем в Python
- Метод get() для словарей
- Работа с областями видимости переменных
- Работа с OpenCV
- Сортировка слиянием
- Работа с модулем bisect
- Переворот строки с использованием цикла
- Операторы += в Python
- Частичное совпадение пользовательского ввода в Python 3.10
- Функции высшего порядка в Python
- Декораторы в Python
- Преобразование текста в нижний регистр
- Отладка в Python
- Разделение функций на этапы















