"Si un ouvrier veut bien faire son travail, il doit d'abord affûter ses outils." - Confucius, "Les Entretiens de Confucius. Lu Linggong"
Page de garde > La programmation > Lambda ou compréhension de liste : quelle est la meilleure solution pour les différences entre éléments dans les listes Python ?

Lambda ou compréhension de liste : quelle est la meilleure solution pour les différences entre éléments dans les listes Python ?

Publié le 2024-12-23
Parcourir:764

 Lambda vs. List Comprehension: Which is Best for Element-wise Differences in Python Lists?

Effectuer des différences entre éléments dans les listes : Lambda et compréhension de liste

Rechercher des différences entre des éléments adjacents dans une liste est une opération courante dans programmation. En Python, il existe plusieurs façons d'y parvenir, notamment en utilisant des expressions lambda ou des compréhensions de liste.

Expression Lambda :

Une expression lambda peut être utilisée pour créer une fonction. à la volée, qui peut ensuite être utilisé pour opérer sur chaque élément de la liste. Par exemple :

t = [1, 3, 6]
differences = list(map(lambda i, j: j - i, t[:-1], t[1:]))

Dans ce cas, la fonction lambda lambda i, j: j - i soustrait le (i)-ème élément de son (i 1)-ème élément. La fonction map applique ensuite cette fonction à chaque paire d'éléments adjacents dans la liste.

Compréhension de liste :

Les compréhensions de liste fournissent un moyen concis de créer une nouvelle liste basée sur sur une liste existante. La compréhension de liste suivante effectue la même opération que l'expression lambda ci-dessus :

differences = [j - i for i, j in zip(t[:-1], t[1:])]

La fonction zip associe les éléments adjacents dans la liste et la compréhension de la liste parcourt ces paires. Pour chaque paire (i, j), il calcule la différence j - i.

Comparaison :

Les deux approches ont leurs avantages et leurs inconvénients. Les expressions lambda sont plus polyvalentes et peuvent être utilisées dans un plus large éventail de situations. Cependant, les compréhensions de liste sont souvent plus concises et plus faciles à lire.

Exemple :

Étant donné la liste t = [1, 3, 6], l'expression lambda et la compréhension de la liste produira le résultat suivant :

[2, 3]

C'est parce que la première différence (3 - 1) est 2 et la deuxième différence (6 - 3) est 3.

Dernier tutoriel Plus>

Clause de non-responsabilité: Toutes les ressources fournies proviennent en partie d'Internet. En cas de violation de vos droits d'auteur ou d'autres droits et intérêts, veuillez expliquer les raisons détaillées et fournir une preuve du droit d'auteur ou des droits et intérêts, puis l'envoyer à l'adresse e-mail : [email protected]. Nous nous en occuperons pour vous dans les plus brefs délais.

Copyright© 2022 湘ICP备2022001581号-3