🔍 Как сортировать объекты класса питон? Лучший способ при помощи Питона 👨💻
Детальный ответ
Как сортировать объекты класса в Python
В Python у нас есть возможность сортировать объекты класса, используя встроенную функцию sorted()
или метод sort()
. Оба этих метода могут быть применены к спискам, содержащим экземпляры классов.
Использование функции sorted
Функция sorted()
принимает в качестве аргумента список, требующий сортировки. Для сортировки объектов класса необходимо использовать аргумент key
, который указывает на функцию, определяющую ключ сортировки.
Допустим, у нас есть класс Person
с атрибутами name
и age
:
Для сортировки объектов класса Person
по атрибуту age
, мы должны передать функцию, которая возвращает значение атрибута age
в качестве ключа сортировки:
В результате у нас будет список sorted_people
, отсортированный по возрастанию:
Вывод:
Иван 20
Алексей 25
Мария 30
Использование метода sort
Метод sort()
применяется к спискам, содержащим экземпляры классов, и сортирует их внутри списка без создания нового списка.
Пример:
В результате экземпляры класса Person
в списке people
будут отсортированы по имени:
Вывод:
Алексей 25
Иван 20
Мария 30
Сортировка в обратном порядке
Если вам нужно отсортировать объекты класса по убыванию, вы можете использовать аргумент reverse=True
. Пример:
Теперь объекты класса Person
будут отсортированы в обратном алфавитном порядке по имени:
Вывод:
Мария 30
Иван 20
Алексей 25