Курс 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.
- Создание словаря и множества
- Поиск наиболее частого элемента в списке
- Разделение строки на пары ключ-значение.
- Модуль os: работа с файлами и папками
- Цикл for в Python
- Оптимизация памяти в Python
- Работа с WindowsPath()
- Преобразование символов в нижний регистр
- Проверка версии Python
- Изменение списка срезом
- Комментарии в Python
- Шаблоны и наследование в Flask
- Функция zip() в Python
- Установка и использование Logzero
- Пересечение списков с использованием множеств
- Нахождение максимального значения и его индекса в списке
- Определение функций с необязательными аргументами
- Работа со слайсами
- Работа с YAML в Python
- Автоматизация действий с Pyautogui
- Делегирование в Python
- Работа с атрибутом dict
- Упрощенный вывод данных в Python
- Методы list в Python
- Удаление элементов из списка в Python
- Beautiful Soup — извлечение данных из HTML
- Инициализация объекта
- Проверка вхождения подстроки
- Проверка условий в Python
- Переопределение метода divmod
- Дизассемблирование Python кода
- Добавление вложенных списков
- Открытие и редактирование скриптов Python
- Метод pop() списка
- Распаковка элементов последовательности
- JSON в Python: модуль, dump, dumps, load
- Numpy: использование Ellipsis
- Проверка дублей в списке.
- Вычисление времени выполнения
- PUT запрос для обновления данных
- Переопределение метода xor в Python















