5
[{'time': 33}, {'time': 11}, {'time': 66}]Comment trier cette liste en Python?
Comment trier par l'élément "time", DESC.
[{'time': 33}, {'time': 11}, {'time': 66}]Comment trier cette liste en Python?
Comment trier par l'élément "time", DESC.
Comme ceci:
from operator import itemgetter
l = sorted(l, key=itemgetter('time'), reverse=True)
Ou:
l = sorted(l, key=lambda a: a['time'], reverse=True)
sortie:
[{'time': 66}, {'time': 33}, {'time': 11}]
Si vous ne souhaitez pas conserver l'ordre d'origine, vous pouvez utiliser your_list.sort
qui modifie la liste originale au lieu de créer une copie comme sorted(your_list)
l.sort(key=lambda a: a['time'], reverse=True)
la version operator.itemgetter est préférée. Il a un appel de fonction de moins pour chaque élément. – nosklo
@nosklo, itemgetter renvoie en fait une fonction qui fonctionne presque comme lambda a: a ['time'] donc il n'y a pas vraiment de différence par rapport à cette perspective. Les deux méthodes impliquent un appel de fonction pour chaque élément. –