Maison  >  Article  >  développement back-end  >  python comment trier une liste selon les valeurs d'un dictionnaire dans la liste

python comment trier une liste selon les valeurs d'un dictionnaire dans la liste

silencement
silencementoriginal
2019-05-25 13:24:5517242parcourir

python comment trier une liste selon les valeurs d'un dictionnaire dans la liste

1. Trier par valeur du dictionnaire (la valeur par défaut est croissante)

x = {1:2, 3:4, 4 :3, 2:1, 0:0}
1. sorted_x = sorted(x.iteritems(), key=operator.itemgetter(1)) print sorted_x
Résultat de sortie : [(0, 0) , (2, 1), (1, 2), (4, 3), (3, 4)]
Si vous souhaitez trier par ordre décroissant, vous pouvez spécifier reverse=True

2. sorted_x = sorted(x.iteritems(), key=operator.itemgetter(1), reverse=True) print sorted_x
Résultat de sortie : [(3, 4), (4, 3), (1 , 2), (2 , 1), (0, 0)]

2 Ou utilisez directement la méthode inverse de list pour inverser l'ordre de sorted_x

sorted_x.reverse()

3. La méthode la plus courante consiste à utiliser l'expression lambda

sorted_x = sorted(x.iteritems(), key=lambda x : x[1] ) print sorted_x

Résultat de sortie : [(0, 0), (2, 1), (1, 2), (4, 3), (3, 4)]
orted_x = sorted( x.iteritems(), key=lambda x : x[1], reverse=True) print sorted_x
Résultat de sortie : [(3, 4), (4, 3), (1, 2), (2, 1), (0, 0)]

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn