dictionnaire de tri Python

Pour trier un dictionnaire par valeur en Python, vous pouvez utiliser la fonction sorted(). La fonction sorted() de Python peut être utilisée pour trier les dictionnaires par clé, ce qui permet une méthode de tri personnalisée. sorted() prend trois arguments : object, key et reverse.

Les dictionnaires sont des structures de données non ordonnées. Ils utilisent une structure de mappage pour stocker les données. Les dictionnaires associent les clés aux valeurs, créant des paires contenant des données associées.

√Ä l’aide de la méthode Python sorted(), vous pouvez trier le contenu d’un dictionnaire par valeur. Par exemple, pour classer la popularité des éléments sur un menu de café, ou répertorier ces éléments par ordre alphabétique, vous pouvez utiliser la méthode sorted() de Python. Ce tutoriel expliquera comment fonctionne la méthode sorted() et comment vous pouvez l’utiliser pour trier le contenu d’un dictionnaire.

Python sorted() Refresher

La fonction sorted() intégrée de Python peut être utilisée pour trier des objets itérables par une clé, tels que des listes, des tuples et des dictionnaires. La fonction sorted() trie les éléments de l’objet itérable spécifié et crée un nouvel objet avec les valeurs nouvellement triées.

Voici la syntaxe du sorted() méthode :

sorted(object, key, reverse)

La méthode prend en compte trois paramètres :

  • objet : l’objet itérable que vous souhaitez trier (obligatoire)
  • clé : la fonction qui vous permet de effectuer des opérations de tri personnalisées (facultatif)
  • inverse : spécifie si l’objet doit être trié par ordre décroissant (facultatif)

Comme vous pouvez voir, "objet‚" est le seul paramètre obligatoire. Si vous décidez de ne pas utiliser les paramètres facultatifs "key‚" et "reverse‚", Python trie automatiquement l’objet par ordre croissant.

81 % des participants ont déclaré qu’ils se sentaient plus confiants quant à leurs perspectives d’emploi en technologie après avoir assisté à un bootcamp. Soyez jumelé à un bootcamp aujourd’hui.

Le diplômé moyen d’un bootcamp a passé moins de six mois en transition de carrière, du démarrage d’un bootcamp à la recherche de son premier emploi.

Remarque : Python.Engineering a écrit un guide complet sur les méthodes sort() et sorted() en Python. Si vous souhaitez en savoir plus sur cette méthode et le paramètre key, consultez notre tutoriel Python sort().

Parcourons un exemple rapide pour illustrer le fonctionnement de la méthode sorted().

:1em; padding-right:1em;">" PLUS : Python SyntaxError : impossible d’attribuer à l’appel de fonction Solution

Disons que nous exploitons un café et que nous souhaitons récupérer une liste alphabétique de nos clients Coffee Club (fidélité). Nous avons déjà une liste de clients, mais il est classé par date d’inscription. Nous pourrions utiliser le code suivant pour trier notre liste :

Notre code trie le tableau customers et renvoie les éléments suivants :

[’Alexandria Kidd’, ’Darius Rowland’, ’Isaac Borthwick’, ’Kaley Fernandez’ ]

Sur la première ligne de notre code, nous déclarons une liste qui stocke les noms de nos clients, cette liste s’appelle : clients. Ensuite, nous utilisons le sorted() pour trier la liste des noms de clients par ordre croissant ; cette nouvelle liste s’appelle : sorted_customers. Enfin, nous imprimons la liste nouvellement triée sur la console à l’aide de la fonction print().

Trier un dictionnaire par valeur

Laissez‚Äô s dites que vous avez un dictionnaire et que vous voulez le trier par paires clé-valeur. Vous pouvez le faire en utilisant deux fonctions ensemble : items() et sorted().

Les items( ) permet de récupérer les éléments d’un dictionnaire. Nous pouvons utiliser cette fonction en combinaison avec la fonction sorted() et un paramètre personnalisé key pour trier un dictionnaire par valeur. Considérez les deux exemples suivants.

Exemple 1 : Trier par ordre décroissant

Revenons au café. Supposons que nous ayons un dictionnaire qui stocke les éléments de notre menu de café ainsi que le nombre de chaque élément commandé au cours du dernier mois. Nous voulons voir quel était le café le plus populaire le mois dernier, nous décidons donc de trier le dictionnaire d’ordre par ordre décroissant de valeurs.

Voici un programme que nous pourrions utiliser pour trier le contenu de notre dictionnaire par valeur :

Notre code renvoie les éléments suivants :

expresso 72

latte 56

cappuccino 54

americano 48

cortado 41

Il se passe beaucoup de choses dans notre code , alors décomposons-le.

Au début de notre code, nous définissons un dictionnaire appelé orders qui stocke les noms de cafés sous la forme clés et le nombre vendu comme valeurs.

"Python.Engineering est entré dans ma vie au moment o√π j’en avais le plus besoin et m’a rapidement aidé à m’adapter à un bootcamp. Deux mois après avoir obtenu mon diplôme, j’ai trouvé l’emploi de mes rêves qui correspondait à mes valeurs et à mes objectifs dans la vie !"

Venus, ingénieur logiciel chez Rockbot

Ensuite, nous utilisons la méthode sorted() pour trier le dictionnaire orders par valeur. Voici une ventilation de la façon dont nous avons utilisé le sorted() méthode :

ParamètreTexteDescription
objetorders.items() Fait référence à toutes les valeurs de notre dictionnaire "orders". l’élément pour obtenir sa valeur individuelle. Alors que si nous utilisons commandes.items(), une liste itérative avec les éléments d’une liste est créée.
clékey=lambda x : x[1]Un mécanisme de tri qui nous permet de trier notre dictionnaire par valeur. Ceci est un exemple de fonction Lambda, qui est une fonction sans nom.
reversereverse=TrueDéclare que nous voulons que nos données soient triées par ordre décroissant.

Enfin, nous créons un for boucle qui parcourt chaque élément créé dans notre méthode sort_order et imprime à la fois son nom de clé et sa valeur, triés dans l’ordre que nous avons spécifié dans le sort_order< fonction /code>.

Exemple 2 : Trier par ordre croissant

De même, si nous voulions trouver la boisson la moins populaire vendue dans notre café, nous pourrions utiliser le même code que ci-dessus mais sans le paramètre reverse=True. Voici un exemple de code pour cela :

Lorsque nous exécutons notre code, les valeurs suivantes sont renvoyées :

cortado 41

americano 48

cappuccino 54

latte 56

espresso 72

Comme vous pouvez le voir, notre code a renvoyé une liste d’articles classés par ordre croissant, en fonction du nombre de chaque article commandé au cours du dernier mois.

Compréhension de liste

De plus, nous pouvons utiliser la compréhension de liste pour trier le contenu du dictionnaire par valeur. La compréhension de liste est une technique concise pour créer des listes en Python et peut économiser de l’espace si vous créent des méthodes de tri plus complexes.

Voici le code que nous utiliserions pour trier nos commandes de café par ordre croissant du nombre de chaque café commandé en utilisant la compréhension de liste :

Lorsque nous exécutons notre code, la réponse suivante est renvoyée :

cortado 41

americano 48

cappuccino 54

latte 56

espresso 72

Le résultat de notre code était le même que notre exemple ci-dessus o√π nous avons trié le contenu de la liste des commandes par ordre croissant. Mais au lieu de définir une variable sort_orders et de créer une boucle for distincte pour parcourir la liste triée, nous avons créé une liste en utilisant la technique de compréhension de liste.

La compréhension de liste que nous avons créée ci-dessus trie chaque élément de notre liste dans l’ordre croissant, puis imprime la clé et la valeur de chaque élément du dictionnaire sur la console.

Conclusion

Lorsque vous travaillez avec des dictionnaires en Python, le tri d’un dictionnaire par valeur est une opération courante. La méthode sorted() vous permet de trier un ensemble de données en fonction de vos besoins.

Ce tutoriel a expliqué, en fournissant des exemples, comment utiliser le sorted () méthode pour trier un dictionnaire par valeur en Python, y compris comment utiliser les paramètres key et reverse .

Maintenant, vous êtes prêt à commencer à trier les dictionnaires par valeur comme un pro Python !