Курс 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"
- Метод __ixor__ для побитового исключающего ИЛИ
- Преобразование чисел в восьмеричную строку
- Установка и использование Python-dateutil
- Оптимизация гиперпараметров с Scikit Optimize
- Измерение времени выполнения кода в Python
- Метод rpow в Python
- Разделение функций на этапы
- Регистрация на TenChat
- Создание объекта timedelta
- Определение объема памяти объекта
- Регистрация на курсы SF Education
- Сортировка элементов с OrderedDict
- inspect в Python: анализ кода
- Сокращение ссылок с pyshorteners
- Конвертация изображений в PDF
- Списковое включение в Python
- Форматирование строк с f-строками
- ChainMap избыточные ключи
- Замена символов в Python
- Объединение кортежей в Python
- Декораторы в Python
- Получение ID текущего процесса
- discard() — удаление элемента из множества
- Удаление ключа из словаря в Python
- Проверка подстроки в строке с помощью in
- Управление памятью в numpy.
- Получение атрибутов и методов класса
- Поиск уникальных элементов строкой в Python
- Работа со строками
- Непрерывная проверка в Python
- Хранение переменных в словаре.
- Асинхронный код в Python
- Оператор += для объединения строк
- Отправка поздравлений по дню рождения
- Python 3.12: Псевдонимы типов
- Получение размера объекта с sys.getsizeof()
- Объединение строк с помощью метода join
- Асинхронное программирование с asyncio
- Создание словарей в Python
- Добавление Progressbar в Python
- Парсинг статей с Newspaper3k
- Объединение словарей в Python
- Управление виртуальными средами в Python
- Декораторы для регистрации функций
- Управление сессиями в Python
- Работа с defaultdictами в Python















