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

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

Barbara Streisand
Barbara Streisandoriginal
2024-11-23 06:46:13535parcourir

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

Compréhension de liste Python précédée d'une variable

L'extrait de code Python ci-dessous utilise une compréhension de liste avec une variable, foo :

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

Ce code effectue une séquence d'opérations, créant une nouvelle liste, foo, basée sur les valeurs de la liste existante, barre. Il parcourt les éléments de bar en effectuant les étapes suivantes :

  1. Affectation de variables : Pour chaque élément x de bar, il vérifie si son attribut d'occupants est supérieur à 1. Si vrai, il attribue la valeur de x à une nouvelle variable, x.
  2. Ajout de liste : Il ajoute la valeur attribuée valeur de x à la nouvelle liste, foo.

Par conséquent, la liste résultante, foo, contient uniquement les éléments de bar où l'attribut occupants est supérieur à 1. Cela équivaut au code détaillé suivant :

result = []
for x in bar:
    if x.occupants > 1:
        result.append(x)

Comprendre les compréhensions de listes

Compréhensions de listes sont un moyen concis de créer de nouvelles listes basées sur celles existantes tout en appliquant certaines conditions ou transformations. Ils ont la syntaxe générale suivante :

[<transformation> for <element> in <sequence> if <condition>]

Dans le contexte du fragment de code fourni :

  • Élément : La variable de boucle, x, parcourt chaque élément de la séquence, barre.
  • Condition : La condition if x.occupants > 1 filtre les éléments qui ne répondent pas aux critères spécifiés.
  • Transformation : La variable x elle-même est la transformation, car elle est ajoutée directement à la liste résultante.

Essentiellement, les compréhensions de listes fournissent un moyen compact et efficace de manipuler et de filtrer les données en Python, rendant le code plus concis et lisible.

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