Курс 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. Преобразование строки в число
  2. Работа с часовыми поясами в Python.
  3. Скрытие вывода данных
  4. Освоение Python
  5. Получение размера объекта с sys.getsizeof()
  6. Установка и использование Python-dateutil
  7. Python: цикл for и оператор присваивания
  8. Генераторы в Python
  9. Beautiful Soup — извлечение данных из HTML
  10. Компиляция регулярных выражений
  11. Пропуск начальных строк с помощью dropwhile()
  12. Метод Event.wait() в Python
  13. Списки в Python: основы
  14. Модуль sys: основы
  15. Эффективная конкатенация строк с использованием join()
  16. Создание пар из последовательностей
  17. Основные операции с Numpy
  18. Хешируемые ключи в Python
  19. Метод __int__ в Python
  20. Создание и удаление объектов
  21. Удаление файлов в Python
  22. Статическая типизация в Python
  23. Работа с геоданными с помощью geopy
  24. Работа со слайсами
  25. Сумма элементов списка
  26. PUT запрос для обновления данных
  27. Удаление ключа из словаря
  28. Изменяемые и неизменяемые объекты
  29. Поиск email
  30. Работа с zip()
  31. Combobox в Tkinter
  32. Оператор умножения для вектора
  33. Работа с географическими данными в Python
  34. Работа с утверждениями в Python
  35. Чтение и запись TOML-конфигов
  36. Регистрация на TenChat
  37. Работа с рекламными данными в Pandas
  38. Расчет времени выполнения программы
  39. Карта бомбоубежищ в Москве и Питере
  40. Объединение списков в строку
  41. capitalize() — изменение регистра первого символа строки
  42. Работа с изменяемыми коллекциями
  43. Функции map, filter и reduce
  44. Функция format() в Python
  45. Получение локальных переменных в Python
  46. Генерация строк с .join()

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