Курс 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"

  1. Метод title() в Python
  2. Установка Python — Простое руководство
  3. Форматирование данных с помощью pprint
  4. Избегание изменяемых аргументов
  5. Таймер обратного отсчета
  6. Списки в Python: основы
  7. Отображение HTML кода в Python
  8. Метод rmatmul для пользовательских матриц
  9. Профилирование данных с Pandas.
  10. Основные операции с Numpy
  11. Поиск HTML-элементов с BeautifulSoup
  12. Работа с путями в Python
  13. Метод сравнения объектов в Python
  14. Numpy: использование Ellipsis
  15. Получение ID процесса
  16. Чтение и запись TOML-конфигов
  17. Цикл for в Python
  18. Переопределение метода len
  19. Метод ipow для возведения в степень
  20. Список переменных в Python
  21. Логирование с Loguru
  22. Работа с географическими данными.
  23. Копирование объектов в Python
  24. Оператор == в Python
  25. Объединение списков в строку
  26. Работа со строками
  27. Форматирование строк в Python.
  28. Настройка логгера Logzero
  29. Модуль xkcd: загрузка комиксов
  30. Декораторы с аргументами
  31. Импорт модулей в Python 3.12
  32. Импорт и использование модулей в Python
  33. Функция sleep() в Python
  34. Однострочники Python
  35. Обработка аргументов Python
  36. Определение относительного пути
  37. Установка и использование Virtualenv
  38. Методы classmethod и staticmethod
  39. Декоратор защиты анонимных пользователей
  40. Модуль antigravity: генерация координат
  41. Работа с deque из collections
  42. Асинхронное программирование с asyncio
  43. Метод __float__ в Python
  44. Генератор списка в Python

Marketello читают маркетологи из крутых компаний