En Python, la fonction max() vous permet de trouver la valeur maximale dans un itérable donné . Cependant, l'utilisation de l'argument « clé » et des expressions lambda introduit une flexibilité supplémentaire pour définir les critères de comparaison.
La fonction max() prend plusieurs arguments et renvoie le plus grand valeur parmi eux. Par défaut, il compare les objets en fonction de leur ordre naturel, qui dépend du type de l'objet.
L'argument 'key' spécifie une fonction qui transforme chaque objet en une valeur comparable. Cela vous permet de définir des règles personnalisées pour comparer des objets du même type ou même des objets de types différents.
Les expressions Lambda sont des fonctions anonymes, exprimées sous forme de blocs de code sur une ligne. Ils sont généralement utilisés pour définir des fonctions courtes en ligne pour des opérations simples. Dans le contexte de l'argument 'key', une expression lambda renvoie une valeur que la fonction max() utilise pour comparer des objets.
Exemple :
Considérons une liste d'objets Player, chacun avec un attribut 'totalScore'.
<code class="python">players = [ Player("Player 1", 100), Player("Player 2", 200), Player("Player 3", 150), ]</code>
Pour trouver le joueur avec le 'totalScore' le plus élevé, on peut utiliser :
<code class="python">def winner(): w = max(players, key=lambda p: p.totalScore) return w</code>
Ici, l'expression lambda lambda p : p.totalScore renvoie l'attribut 'totalScore' de chaque objet Player, permettant à la fonction max() de comparer les joueurs en fonction de leurs scores.
En résumé, la fonction max() avec 'key' et Les expressions lambda fournissent un mécanisme puissant pour trouver la valeur maximale dans un itérable, permettant des critères de tri flexibles et personnalisés au-delà de l'ordre par défaut.
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!