Cet article explique comment trier un dictionnaire par sa clé en Python.

1. Utiliser OrderedDict

Les dictionnaires en Python ne sont pas ordonnés avant la version 3.7. Cela signifie que même si vous triez le dictionnaire, vous ne pouvez pas le stocker d'une manière qui préserve l'ordre.

L'idée est de passer les éléments du dictionnaire au sorted() fonction, qui renvoie une liste triée de paires clé-valeur. Ensuite, vous insérez les entrées du dictionnaire trié dans un OrderedDict, qui mémorise l'ordre d'insertion.

Télécharger  Exécuter le code

2.Python 3.7+

Avec Python 3.7 ou CPython 3.6+, l'ordre du dictionnaire est le même que l'ordre d'insertion. Vous pouvez voir ce comportement ci-dessous :

Télécharger  Exécuter le code

 
Pour le trier dans l'ordre inverse, vous pouvez passer le reverse argument comme True:

Télécharger  Exécuter le code

3. Utilisation json.dumps() fonction

Une autre option est de passer votre dictionnaire au json.dumps() fonction avec sort_keys argument comme True. Notez que cela renvoie la représentation sous forme de string d'un dictionnaire trié.

Télécharger  Exécuter le code

4. Utilisation pprint.pprint() fonction

Pour imprimer la représentation triée d'un dictionnaire, vous pouvez utiliser la commande pprint.pprint() fonction, qui imprime le dictionnaire dans l'ordre des clés triées.

Télécharger  Exécuter le code

Il s'agit de trier un dictionnaire par clé en Python.

 
Regarde aussi:

Trier un dictionnaire par valeur en Python