В Python сортировку списка или коллекции элементов на основе нескольких ключей можно выполнить различными методами. Вот несколько часто используемых подходов:
-
Использование функции
sorted()с несколькими критериями:sorted_list = sorted(data, key=lambda x: (x.key1, x.key2)) -
Использование функции
itemgetter()из модуляoperator:from operator import itemgetter sorted_list = sorted(data, key=itemgetter('key1', 'key2')) -
Реализация пользовательской функции сортировки:
def custom_sort(item): return item.key1, item.key2 sorted_list = sorted(data, key=custom_sort) -
Использование функции
attrgetter()из модуляoperator(для сортировки по атрибутам объекта):from operator import attrgetter sorted_list = sorted(data, key=attrgetter('attribute1', 'attribute2')) -
Использование метода
sort()с лямбда-функцией:data.sort(key=lambda x: (x.key1, x.key2))
Эти методы позволяют сортировать список по нескольким ключам, обеспечивая гибкость в определении критериев сортировки.