Comment trier une liste d'objets date et/ou date/heure? La réponse acceptée ici ne fonctionne pas pour moi:
from datetime import datetime,date,timedelta
a=[date.today(), date.today() + timedelta(days=1), date.today() - timedelta(days=1)]
print a # prints '[datetime.date(2013, 1, 22), datetime.date(2013, 1, 23), datetime.date(2013, 1, 21)]'
a = a.sort()
print a # prints 'None'....what???
Vous obtenez None
parce que list.sort()
il fonctionne sur place, ce qui signifie qu'il ne renvoie rien, mais modifie la liste elle-même. Il vous suffit d'appeler a.sort()
sans l'assigner à a
à nouveau.
Il existe une fonction intégrée sorted()
, qui renvoie une version triée de la liste - a = sorted(a)
fera également ce que vous souhaitez.