Курс 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
- Переменная Шредингера
- Просмотр внешнего файла в Python
- Работа с YAML в Python
- Применение промокода в Много лосося
- PUT запрос для обновления данных
- Импортирование в Python
- Работа с дробями в Python
- Распаковка аргументов в Python
- Классы данных в Python
- Вставка переменных в шаблоны Flask
- Разрешение имен в Python
- Многопоточность и асинхронное программирование в Python
- Оператор += для объединения строк
- Печать календаря
- Создание namedtuple списком полей
- Вакансии в Nebius
- Метод get для словаря
- Преобразование букв в нижний регистр
- Управление памятью в numpy.
- Объединение, распаковка и деструктуризация
- Работа с словарями в Python
- Управление контекстом выполнения
- Преобразование данных в Python
- Проверка условий: all и any
- Иерархия классов в Python
- Итерации в Python
- Получение текущего времени в Python
- Управление браузером с Selenium
- Расширение информации об ошибке в Python
- Переопределение метода __and__
- Импорт в Python: список all
- Модуль array: создание и использование массивов
- GitHub в Telegram: подписка на уведомления
- Генераторы списков в Python
- Создание циклической ссылки
- Округление банкира в Python
- Непрерывная проверка в Python
- Определение объема памяти объекта
- Работа с Path в Python
- Инверсия списка и строки
- Установка максимального количества цифр
- Порядок и длина множеств в Python
- Метод join() для объединения элементов строки
- Хранение переменных в Python.
- Работа с Colorama
- Операторы присваивания в Python
- Подсчет частоты элементов с Counter















