Курс 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. List Comprehension Tutorial
  2. Реализация метода __abs__ в Python
  3. Преобразование чисел в восьмеричную строку
  4. Повторение элементов в Python
  5. Методы HTTP запросов в Flask
  6. Блок try-except-else
  7. Поиск элементов BeautifulSoup
  8. Списковые включения в Python
  9. Получение локальных переменных в Python
  10. Проверка вхождения подстроки
  11. Структурирование именованных констант
  12. Склеивание строк через метод join()
  13. Метод __irshift__ для Python
  14. Создание новых функций с помощью functools.partial
  15. Подписка на SelectelNews в Twitter
  16. Функция reduce() из модуля functools
  17. Удаление дубликатов из списка
  18. Ошибка NotImplemented в Python
  19. Перемешивание списка с shuffle()
  20. Работа с YAML в Python: PyYAML.
  21. Переменные в Python
  22. Частичное применение функций в Python
  23. Улучшенные подсказки для импорта в Python 3.12
  24. Поиск кода
  25. Делегирование в Python
  26. Метод join() для объединения элементов
  27. Работа с датой и временем в Python
  28. Работа с исключениями в Python
  29. Преобразование вложенного списка
  30. Переопределение оператора % для объектов
  31. PATCH-запрос с библиотекой requests
  32. Генерация строк с .join()
  33. Декораторы в Python
  34. Удаление эмодзи с помощью pandas
  35. Копирование объектов в Python
  36. Применение функции map() с лямбда-функциями
  37. Установка виртуального окружения Python
  38. Оператор in для Python
  39. Логирование в Python
  40. Структура данных deque в Python
  41. Компиляция регулярных выражений
  42. Функции min(), max(), sum()
  43. Создание namedtuple списком полей
  44. Обработка данных в Python
  45. Обработка исключений в Python 3
  46. Функции map, filter, reduce
  47. Нахождение самого длинного слова в списке с помощью max
  48. Оформление кода по PEP 8
  49. Цикл for в Python
  50. Лямбда-функции в Python

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