Сортировать список объектов Python по дате - PullRequest
30 голосов
/ 20 февраля 2011

У меня есть список Python, который называется Results. Каждый результат в списке результатов имеет объект person, а каждый объект person имеет дату рождения (result.person.birthdate). Дата рождения - это объект даты и времени.

Я бы хотел упорядочить список по дате рождения, начиная с самого старого. Какой самый питонский способ сделать это?

Ответы [ 2 ]

54 голосов
/ 20 февраля 2011
results.sort(key=lambda r: r.person.birthdate)
11 голосов
/ 10 октября 2014

Полностью согласен с Амбер, но есть и другой способ сортировки по атрибуту (из вики: https://wiki.python.org/moin/HowTo/Sorting):

from operator import attrgetter
sorted_list = sorted(results, key=attrgetter('person.birthdate'))

Этот метод на самом деле может быть даже быстрее, чем сортировка с lambda

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...