Maison >développement back-end >Tutoriel Python >Comment fonctionne la compréhension de liste de Python avec une variable précédente ?

Comment fonctionne la compréhension de liste de Python avec une variable précédente ?

Barbara Streisand
Barbara Streisandoriginal
2024-11-21 07:09:09478parcourir

How Does Python's List Comprehension with a Preceding Variable Work?

Boucle for-in Python avec variable précédente

En Python, les compréhensions de liste offrent une syntaxe concise et lisible pour créer de nouvelles listes basées sur le transformation d'éléments existants. Un modèle courant consiste à utiliser une boucle for-in précédée d'une variable, comme illustré dans l'extrait de code :

foo = [x for x in bar if x.occupants > 1]

Explication :

Cette syntaxe est du sucre syntaxique pour une boucle for-in plus détaillée qui parcourt chaque élément de la liste de barres. Pour chaque élément (x), il évalue la condition x.occupants > 1. Si la condition est vraie, elle ajoute x à la nouvelle liste foo.

Structure du code :

La compréhension de la liste suit une structure spécifique :

[function(x) for x in iterable if condition(x)]

Où :

  • function(x) : La fonction appliquée à chaque élément du iterable.
  • x : l'élément actuel de l'itérable.
  • iterable : la liste d'origine ou un autre objet itérable.
  • condition(x) : la condition de filtrage qui détermine si inclure x dans le résultat.

Exemple :

Considérons l'exemple suivant :

numbers = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
evens = [number for number in numbers if number % 2 == 0]  # Get a list of even numbers

Dans ce cas, on crée une nouvelle liste evens en itérer sur chaque élément de la liste de nombres. Pour chaque élément (nombre), nous vérifions si le nombre % 2 == 0 (c'est-à-dire si c'est un nombre pair). Si c'est vrai, nous incluons le numéro dans la liste des événements.

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!

Déclaration:
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