Maison >développement back-end >Tutoriel Python >Comment puis-je conserver l'ordre des clés du dictionnaire lors du tri en Python ?
Préserver l'ordre des dictionnaires en Python
Les dictionnaires en Python sont intrinsèquement non ordonnés, ce qui rend difficile le tri de leurs clés. Cet article explore les méthodes de tri des dictionnaires par leurs clés.
Dictionnaires standard
Les dictionnaires Python standard ne maintiennent pas d'ordre spécifique pour les paires (clé, valeur). Trier les paris modifierait l'ordre imprévisible du dictionnaire.
OrderedDict : une solution
La classe OrderedDict, une sous-classe de dict, résout ce problème. Il se souvient de l'ordre d'insertion des éléments, garantissant que les clés restent ordonnées après le tri.
import collections # Sample dictionary d = {2: 3, 1: 89, 4: 5, 3: 0} # Create an OrderedDict with sorted keys od = collections.OrderedDict(sorted(d.items())) # Print the sorted OrderedDict print(od)
Sortie :
OrderedDict([(1, 89), (2, 3), (3, 0), (4, 5)])
Accès aux valeurs
Malgré les clés triées, le OrderedDict conserve le comportement attendu pour la valeur accès.
print(od[1]) # Prints 89 print(od[3]) # Prints 0
Itération
L'itération dans un OrderedDict préserve l'ordre des clés triées.
for k, v in od.items(): print(k, v)
Sortie :
1 89 2 3 3 0 4 5
Python 3
Dans Python 3, utilisez la syntaxe mise à jour pour itérer sur les éléments :
for k, v in od.items(): print(k, v)
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!