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 ?
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]
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 :
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);
Équivalent Haskell :
foo = [x | x <- bar, x.occupants > 1]
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!