Maison >développement back-end >Tutoriel Python >Comment trier un dictionnaire Python par clés ?

Comment trier un dictionnaire Python par clés ?

Susan Sarandon
Susan Sarandonoriginal
2024-12-23 19:09:15729parcourir

How to Sort a Python Dictionary by Keys?

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!

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