Maison > Article > développement back-end > 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!