Maison > développement back-end > Tutoriel Python > Que signifie une boucle Python « for-in » précédée d'une variable dans la compréhension de liste et comment fonctionne-t-elle ?

Que signifie une boucle Python « for-in » précédée d'une variable dans la compréhension de liste et comment fonctionne-t-elle ?

Barbara Streisand
Libérer: 2024-11-28 16:08:11
original
309 Les gens l'ont consulté

What Does a Python `for-in` Loop Preceded by a Variable in List Comprehension Mean and How Does It Work?

Boucle for-in Python précédée d'une variable

Considérez le code suivant :

foo = [x for x in bar if x.occupants > 1]
Copier après la connexion

Ce code génère la question : « Qu'est-ce que cela signifie et comment ça marche ? »

Pour comprendre cette construction, nous devons plongez dans la syntaxe de compréhension de liste de Python. Une compréhension de liste est un moyen compact de générer une liste en itérant sur une collection existante tout en filtrant et en transformant éventuellement les éléments en fonction d'une condition.

Syntaxiquement, une compréhension de liste se compose de trois parties :

  1. Expression : Une expression représentant les éléments à ajouter au list.
  2. boucle for-in avec une variable : parcourt la collection d'entrée et affecte chaque élément à la variable spécifiée.
  3. instruction if (facultatif)  : filtre les éléments en fonction d'une condition spécifiée.

Dans l'exemple de code, la boucle for-in parcourt chaque élément x dans la barre de collection. L'expression x.occupants > 1 est évalué pour chaque élément, et s'il est évalué à True, l'élément x est ajouté à la liste résultante foo. Ce processus est analogue à une boucle régulière avec une condition de filtre supplémentaire.

Équivalent MATLAB :

foo = bar(bar.occupants > 1);
Copier après la connexion

Équivalent Haskell :

foo = [x | x <- bar, x.occupants > 1]
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