Maison > développement back-end > Tutoriel Python > Comment les expressions Lambda et les compréhensions de listes se comparent-elles lors du calcul des différences dans les listes Python ?

Comment les expressions Lambda et les compréhensions de listes se comparent-elles lors du calcul des différences dans les listes Python ?

Linda Hamilton
Libérer: 2024-10-31 09:39:29
original
601 Les gens l'ont consulté

  How Do Lambda Expressions and List Comprehensions Compare When Calculating Differences in Python Lists?

Trouver les différences entre les éléments dans les listes Python

Le calcul des différences entre les éléments adjacents dans une liste est une tâche courante dans l'analyse et la manipulation de données. Deux solutions populaires incluent les expressions lambda et les compréhensions de liste.

Expressions lambda

Les expressions lambda fournissent une syntaxe concise pour définir des fonctions anonymes. Pour calculer les différences à l'aide d'une expression lambda, vous pouvez utiliser le code suivant :

<code class="python">differences = list(map(lambda x, y: y - x, t[:-1], t[1:]))</code>
Copier après la connexion

Ce code parcourt les éléments de la liste t, à l'exclusion du dernier élément, et calcule la différence entre l'élément actuel et l'élément suivant. en utilisant la fonction lambda lambda x, y : y - x. Les différences résultantes sont stockées dans la liste des différences.

Compréhensions de listes

Les compréhensions de listes offrent une manière plus compacte de définir des séquences en Python. Pour créer une liste de différences à l'aide d'une compréhension de liste, vous pouvez utiliser le code suivant :

<code class="python">differences = [j - i for i, j in zip(t[:-1], t[1:])]</code>
Copier après la connexion

Ce code utilise la fonction zip pour parcourir les éléments de la liste t, en excluant le dernier élément, et les paires formez-les sous forme de tuples. Chaque tuple contient l'élément actuel et l'élément suivant. La compréhension de liste applique ensuite l'opération de soustraction à chaque tuple et génère une liste de différences.

Comparaison

Les expressions lambda et les compréhensions de liste peuvent être utilisées pour calculer les différences dans Listes Python. Cependant, les compréhensions de listes sont généralement plus concises et plus lisibles pour cette tâche particulière. Ils évitent également de devoir définir explicitement une fonction, ce qui peut être bénéfique dans certains cas.

Exemple

Étant donné la liste t=[1, 3, 6] , le code ci-dessous montre comment calculer les différences en utilisant les deux méthodes :

<code class="python">print([j-i for i, j in zip(t[:-1], t[1:])])  # list comprehension
print(list(map(lambda x, y: y - x, t[:-1], t[1:])))  # lambda expression</code>
Copier après la connexion

Ce code affichera le résultat suivant :

[2, 3]
[2, 3]
Copier après la connexion

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!

source:php.cn
Déclaration de ce site Web
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
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal