Maison >développement back-end >Tutoriel Python >Comment puis-je trier une liste Python par plusieurs champs à l'aide des fonctions Lambda ?

Comment puis-je trier une liste Python par plusieurs champs à l'aide des fonctions Lambda ?

Barbara Streisand
Barbara Streisandoriginal
2024-11-26 19:40:12658parcourir

How Can I Sort a Python List by Multiple Fields Using Lambda Functions?

Tri d'une liste Python par plusieurs champs

Vous disposez d'une liste Python créée à partir d'un fichier CSV trié à l'aide de l'opérateur itemgetter. Bien que la liste soit déjà triée selon la valeur du deuxième champ, vous souhaitez améliorer le tri pour inclure également le premier champ.

Pour y parvenir, vous pouvez exploiter les fonctions lambda. Ils permettent de définir une clé de tri personnalisée qui prend en compte plusieurs critères.

Le code suivant apporte une solution :

sorted_list = sorted(list1, key=lambda x: (x[0], x[1]))

Voici comment cela fonctionne :

  • lambda x : (x[0], x[1]) définit une fonction lambda qui renvoie un tuple contenant les valeurs du premier et du deuxième field.
  • sorted_list = sorted(list1, key=lambda x: (x[0], x[1])) utilise cette fonction lambda comme clé de tri, ce qui donne une liste triée à la fois par le premier et seconds champs.

En utilisant les fonctions lambda, vous pouvez facilement définir des critères de tri complexes et trier vos listes Python en fonction de vos besoins spécifiques. exigences.

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