Mais
Como ordenar uma lista de dicionários por um valor do dicionário?
Eu tenho uma lista de dicionários e quero que cada item seja classificado por um valor de propriedade específico.
Leve em consideração a matriz abaixo,
[{'name':'Homer', 'age':39}, {'name':'Bart', 'age':10}]
Quando ordenado por "nome", deve tornar-se
[{'name':'Bart', 'age':10}, {'name':'Homer', 'age':39}]
1707
3
A "minha_lista" será agora o que você quer.
(3 anos depois) Editado para adicionar:
O novo argumento "chave" é mais eficiente e mais limpo. Uma resposta melhor agora parece ser:
...a lambda é, IMO, mais fácil de entender do que "operador.itemgetter", mas YMMV.
Acho que quiseste dizer:
Isto seria resolvido desta maneira:
Você tem que implementar sua própria função de comparação que irá comparar os dicionários por valores de chaves de nomes. Veja Classificando Mini-HOW TO do PythonInfo Wiki