Курс 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. Работа с f-строками 2.0
  3. Метод join() для объединения элементов строки
  4. Путь к интерпретатору Python
  5. Метод __imod__ для Python
  6. Установка Python3.7 и PIP
  7. Объединение словарей в Python
  8. Декораторы классов
  9. Метод join() для объединения элементов
  10. Цикл for в Python
  11. Метод __irshift__ для Python
  12. Названия переменных
  13. Метод remove() для удаления элемента из списка
  14. Импорт модулей в Python 3.12
  15. Поиск индексов подстроки
  16. Списковый компрехеншен.
  17. Таймер обратного отсчета
  18. Применение функции к списку
  19. Обратное распространение ошибки
  20. Управление User-Agent в Python
  21. inspect в Python: анализ кода
  22. Метод getitem для доступа к элементам последовательности
  23. Метод join() для объединения элементов в строку.
  24. Обмен значений переменных в Python
  25. Инициализация переменных
  26. Обход дочерних элементов BeautifulSoup
  27. Функция zip() в Python
  28. Преобразование регистра символов
  29. Метод hash в Python
  30. Возврат нескольких значений из функции
  31. Работа с исключениями в Python
  32. Группы исключений в Python
  33. Округление чисел с помощью round
  34. CLI-инструмент howdoi
  35. Декораторы в Python
  36. Объединение словарей в Python
  37. Управление фоновыми задачами в Python
  38. Извлечение статей с newspaper3k
  39. Оператор is в Python
  40. Поиск email
  41. Работа с байтовыми строками в Python
  42. Сравнение def и lambda-функций
  43. Создание и использование ChainMap
  44. Многоточие в Python
  45. Дизассемблирование Python кода
  46. Импорт модулей и пакетов в Python
  47. Основные операции с Numpy
  48. Асинхронное программирование с asyncio

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