Курс 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"
- Метод title() в Python
- Установка Python — Простое руководство
- Форматирование данных с помощью pprint
- Избегание изменяемых аргументов
- Таймер обратного отсчета
- Списки в Python: основы
- Отображение HTML кода в Python
- Метод rmatmul для пользовательских матриц
- Профилирование данных с Pandas.
- Основные операции с Numpy
- Поиск HTML-элементов с BeautifulSoup
- Работа с путями в Python
- Метод сравнения объектов в Python
- Numpy: использование Ellipsis
- Получение ID процесса
- Чтение и запись TOML-конфигов
- Цикл for в Python
- Переопределение метода len
- Метод ipow для возведения в степень
- Список переменных в Python
- Логирование с Loguru
- Работа с географическими данными.
- Копирование объектов в Python
- Оператор == в Python
- Объединение списков в строку
- Работа со строками
- Форматирование строк в Python.
- Настройка логгера Logzero
- Модуль xkcd: загрузка комиксов
- Декораторы с аргументами
- Импорт модулей в Python 3.12
- Импорт и использование модулей в Python
- Функция sleep() в Python
- Однострочники Python
- Обработка аргументов Python
- Определение относительного пути
- Установка и использование Virtualenv
- Методы classmethod и staticmethod
- Декоратор защиты анонимных пользователей
- Модуль antigravity: генерация координат
- Работа с deque из collections
- Асинхронное программирование с asyncio
- Метод __float__ в Python
- Генератор списка в Python















