Tri d'une liste de listes par un élément de liste interne spécifique
Pour trier une liste de listes en fonction d'un index spécifique dans chaque liste interne , Python propose plusieurs approches. Une méthode couramment utilisée consiste à utiliser la fonction itemgetter() du module opérateur.
Solution Utilisation de itemgetter() :
La fonction itemgetter() du module opérateur vous permet de extraire sélectivement un élément spécifique d’une liste ou d’un tuple. En passant la fonction itemgetter() comme argument à la fonction sorted(), vous pouvez trier la liste externe en fonction de l'élément interne souhaité :
from operator import itemgetter L = [[0, 1, 'f'], [4, 2, 't'], [9, 4, 'afsd']] sorted(L, key=itemgetter(2))
Cet extrait de code triera la liste L en fonction du éléments de chaîne au deuxième index de chaque liste interne. La liste triée résultante sera :
[[9, 4, 'afsd'], [0, 1, 'f'], [4, 2, 't']]
Solution alternative utilisant une fonction Lambda :
Vous pouvez également utiliser une fonction lambda pour obtenir le même comportement de tri :
sorted(L, key=lambda x: x[2])
Cependant, dans ce cas simple, l'utilisation d'une fonction lambda est légèrement plus lente que celle de itemgetter().
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!