Maison > développement back-end > Tutoriel Python > Comment trier une liste de dictionnaires par valeur en Python ?

Comment trier une liste de dictionnaires par valeur en Python ?

Susan Sarandon
Libérer: 2024-12-18 14:01:10
original
777 Les gens l'ont consulté

How to Sort a List of Dictionaries by Value in Python?

Tri d'une liste de dictionnaires par valeur de dictionnaire en Python

Tri d'une liste de dictionnaires par valeur d'une clé spécifique est une tâche courante en programmation Python. Cela vous permet d'organiser les dictionnaires dans un ordre significatif, par exemple par ordre alphabétique par nom ou numériquement par âge.

Solution

Pour trier une liste de dictionnaires par valeur d'une clé spécifique, vous pouvez utiliser la fonction sorted() avec le paramètre key=. Ce paramètre prend une fonction qui extrait la valeur de la clé souhaitée de chaque dictionnaire.

Utiliser une fonction Lambda

Une façon de procéder consiste à utiliser une fonction lambda , qui est une fonction anonyme sans nom. Par exemple, pour trier la liste de dictionnaires donnée par la clé 'nom' :

newlist = sorted(list_to_be_sorted, key=lambda d: d['name'])
Copier après la connexion

Utiliser Operator.itemgetter

Alternativement, au lieu de définir votre propre fonction , vous pouvez utiliser la fonction Operator.itemgetter, qui constitue un moyen pratique d'extraire les valeurs des objets. Par exemple :

from operator import itemgetter
newlist = sorted(list_to_be_sorted, key=itemgetter('name'))
Copier après la connexion

Tri inversé

Si vous souhaitez trier par ordre décroissant, vous pouvez ajouter l'argument reverse=True à la fonction sorted() :

newlist = sorted(list_to_be_sorted, key=itemgetter('name'), reverse=True)
Copier après la connexion

Cela renverra une nouvelle liste contenant les dictionnaires triés. La liste originale reste inchangée.

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!

source:php.cn
Déclaration de ce site Web
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
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal