Comprendre la syntaxe de sorted(key=lambda: ...)
La fonction sorted() en Python vous permet de trier un liste basée sur une clé de tri personnalisée. L'argument key prend un appelable qui spécifie comment chaque élément doit être comparé pour le tri. Lorsque cet appelable est une fonction lambda, sa syntaxe suit un modèle spécifique :
key=lambda variable: variable[index]
Syntaxe de la fonction Lambda
Une fonction lambda est une fonction anonyme, définie à l'aide de lambda , qui accepte une ou plusieurs variables en entrée et effectue un calcul ou une opération. La syntaxe d'une fonction lambda est :
lambda input_variable(s): expression
Argument clé dans sorted()
L'argument clé dans sorted() prend un appelable, et dans notre cas , l'appelable est une fonction lambda. La fonction lambda est appliquée à chaque élément de la liste et le résultat est utilisé pour comparer les éléments pour le tri.
Comprendre la syntaxe
La variable dans la fonction lambda est attribué à chaque élément de la liste au fur et à mesure que la fonction parcourt la liste. La variable est suivie de deux points (:), suivis de l'expression qui extrait la valeur à utiliser pour le tri. Dans l'exemple fourni, l'expression accède au premier élément de chaque élément de la liste, représenté par variable[0].
Pourquoi "variable" est déclaré deux fois
La variable est indiquée deux fois car les fonctions lambda utilisent un seul deux-points (:) comme séparateur entre les variables d'entrée et l'expression. La première variable, avant les deux points, se voit attribuer les éléments de la liste, et la deuxième variable, après les deux points, se voit attribuer l'expression qui extrait la valeur de tri.
Exemple
Considérons l'exemple suivant :
<code class="python">mylist = [(3, 6), (2, 5), (1, 4)] sorted(mylist, key=lambda x: x[0])</code>
Dans cet exemple, la fonction lambda lambda x: x[0] extrait le premier élément de chaque tuple de maliste. La liste triée sera ensuite ordonnée par le premier élément des tuples par ordre croissant.
Conclusion
La syntaxe de sorted(key=lambda: ...) implique d'utiliser une fonction lambda pour définir une clé de tri personnalisée. La fonction lambda accepte une variable d'entrée, qui est affectée à chaque élément de la liste, et extrait une valeur de cet élément à utiliser pour le tri. Comprendre cette syntaxe et le comportement des fonctions lambda dans la fonction sorted() est crucial pour trier efficacement les listes en fonction de critères personnalisés.
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!