Курс 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. Подсчет количества элементов в списке
  3. Управление сессиями в Python
  4. Добавление Progressbar в Python
  5. Работа с геоданными с помощью geopy
  6. Генератор списка в Python
  7. Проблема с изменяемыми аргументами
  8. Python Enum Weekday Usage
  9. Метод __getitem__ в Python
  10. Обмен значений переменных в Python
  11. Правила именования переменных
  12. Лямбда-функции в цикле
  13. Списки в Python: синтаксис представления
  14. Настройка нарезки списков
  15. Сортировка и разворот списка
  16. Принципы SRP и OCP
  17. Открытие и запись файлов
  18. Названия столбцов в Python таблицах
  19. Рациональные числа в Python
  20. Создание вкладок с TKinter
  21. Извлечение новостей с newspaper3k
  22. Работа с JSON в Python
  23. Функции в Python
  24. Magic Commands — улучшение работы с Python
  25. Приоритет операций в Python
  26. %pinfo: получение информации об объекте
  27. Метод __imod__ для Python
  28. Моржовый оператор в Python 3.8
  29. Работа с изображениями PIL
  30. Разделение строки с помощью re.split()
  31. Аннотации типов в Python
  32. Улучшение читаемости кода в Python
  33. Вставка переменных в шаблоны Flask
  34. Именование переменных в Python
  35. Работа с модулем Calendar
  36. Работа с argparse
  37. Декораторы в Python
  38. Оболочка Python
  39. Проверка вхождения подстроки
  40. Операторы объединения в Python 3.9
  41. Проверка строки на палиндром
  42. Работа с Requests для HTTP-запросов
  43. Печать комбинаций в Python с Itertools
  44. Копирование объектов в Python
  45. Перевернуть список в Python
  46. Удаление элементов из списка в Python
  47. Создание и удаление объектов

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