Курс 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. Работа с прокси в Python
  2. Преобразование чисел в Python
  3. Переменная Шредингера
  4. Просмотр внешнего файла в Python
  5. Работа с YAML в Python
  6. Применение промокода в Много лосося
  7. PUT запрос для обновления данных
  8. Импортирование в Python
  9. Работа с дробями в Python
  10. Распаковка аргументов в Python
  11. Классы данных в Python
  12. Вставка переменных в шаблоны Flask
  13. Разрешение имен в Python
  14. Многопоточность и асинхронное программирование в Python
  15. Оператор += для объединения строк
  16. Печать календаря
  17. Создание namedtuple списком полей
  18. Вакансии в Nebius
  19. Метод get для словаря
  20. Преобразование букв в нижний регистр
  21. Управление памятью в numpy.
  22. Объединение, распаковка и деструктуризация
  23. Работа с словарями в Python
  24. Управление контекстом выполнения
  25. Преобразование данных в Python
  26. Проверка условий: all и any
  27. Иерархия классов в Python
  28. Итерации в Python
  29. Получение текущего времени в Python
  30. Управление браузером с Selenium
  31. Расширение информации об ошибке в Python
  32. Переопределение метода __and__
  33. Импорт в Python: список all
  34. Модуль array: создание и использование массивов
  35. GitHub в Telegram: подписка на уведомления
  36. Генераторы списков в Python
  37. Создание циклической ссылки
  38. Округление банкира в Python
  39. Непрерывная проверка в Python
  40. Определение объема памяти объекта
  41. Работа с Path в Python
  42. Инверсия списка и строки
  43. Установка максимального количества цифр
  44. Порядок и длина множеств в Python
  45. Метод join() для объединения элементов строки
  46. Хранение переменных в Python.
  47. Работа с Colorama
  48. Операторы присваивания в Python
  49. Подсчет частоты элементов с Counter

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