Maison >développement back-end >Tutoriel Python >Comment trier un dictionnaire Python par clés ?
Comment trier un dictionnaire à l'aide de Python
Les dictionnaires en Python sont des structures de données non ordonnées. Cependant, il existe des cas où le tri d'un dictionnaire par ses clés est nécessaire.
Exemple d'entrée :
{2:3, 1:89, 4:5, 3:0}
Sortie souhaitée :
{1:89, 2:3, 3:0, 4:5}
Python standard Dictionnaires
Les dictionnaires Python standard conservent l'ordre des clés uniquement à partir de la version 3.7 de Python. Avant la version 3.7, l'utilisation de la fonction sorted(d.items()) n'obtiendra pas le résultat souhaité car ces dictionnaires ne préservent pas l'ordre des paires triées.
OrderedDict
Pour les versions antérieures à Python 3.7, la solution est d'utiliser le Classe OrderedDict du module collections. Cette classe stocke les paires clé-valeur dans l'ordre dans lequel elles sont insérées, garantissant un ordre cohérent.
import collections d = {2:3, 1:89, 4:5, 3:0} # Create an OrderedDict from sorted key-value pairs od = collections.OrderedDict(sorted(d.items())) print(od)
Sortie :
OrderedDict([(1, 89), (2, 3), (3, 0), (4, 5)])
Python 3
Pour les versions 3 et supérieures de Python, la méthode .items() doit être utilisée à la place de .iteritems() :
for k, v in od.items(): print(k, v)
Sortie :
1 89 2 3 3 0 4 5
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!