liste de compréhension Python

Une compréhension de liste Python est un moyen de créer une liste basée sur une liste existante. Les compréhensions de liste sont couramment utilisées pour filtrer les éléments d’une liste ou pour modifier les valeurs d’une liste existante. Les compréhensions de liste sont placées entre crochets.

Lorsque vous travaillez avec des listes, vous pouvez créer une liste basée sur le contenu d’une séquence existante. Par exemple, vous pouvez créer une liste basée sur une séquence de caractères. Ou vous pouvez vouloir une liste qui multiplie le contenu d’une autre liste par deux.

C’est là qu’intervient la compréhension des listes. Ce tutoriel explorera, avec des exemples, les bases des listes Python, et comment utilisez des compréhensions de liste.

Listes Python : un rafraaîchissement

La structure de données de liste vous permet de stocker des collections d’éléments en Python. Les listes sont couramment utilisées lorsque vous souhaitez travailler avec plusieurs valeurs liées d’une manière ou d’une autre.

Par exemple, vous pouvez utiliser une liste pour stocker toutes les saveurs de crème glacée vendues dans un magasin de crème glacée. Ou vous pouvez utiliser une liste pour stocker une liste des numéros de téléphone des membres d’un club de vin.

Voici un exemple de liste en Python :

Maintenant que nous avons révisé les bases des listes, nous pouvons commencer à parler de l’utilisation de la compréhension de liste.

Python List Comprehension

Une compréhension de liste Python crée une nouvelle liste à partir du contenu d’une autre liste. Vous pouvez utiliser une compréhension de liste pour dupliquer une liste ou pour modifier le contenu d’une liste existante dans une nouvelle liste. Ou vous pouvez transférer le contenu d’un autre itérable dans une liste avec une compréhension de liste.

81 % des participants ont déclaré qu’ils se sentaient plus confiants quant à leurs perspectives d’emploi dans le domaine technique après avoir assisté à un bootcamp. Soyez jumelé à un bootcamp aujourd’hui.

Le diplômé moyen d’un bootcamp a passé moins de six mois en transition de carrière, du démarrage d’un bootcamp à la recherche de son premier emploi.

Vous pouvez spécifier des filtres afin que votre nouvelle liste ne comprend que certaines valeurs. Par exemple, vous pouvez créer une nouvelle liste à partir d’une liste de nombres. Votre nouvelle liste ne peut inclure que des nombres supérieurs à 250.

La syntaxe pour une compréhension de liste en Python est la suivante :

Cette syntaxe est similaire à un Python pour déclaration. Mais, la déclaration est sur une seule ligne. Pour faire la distinction entre une instruction for, une liste de compréhension est placée entre crochets.

La syntaxe ci-dessus comprend trois parties :

  • expression : la valeur finale qui entre dans la nouvelle liste.
  • item : l’élément individuel de la liste sur lequel vous effectuez une itération.
  • list : la liste ou l’objet itérable à travers lequel la compréhension de la liste traverse (types de données acceptables inclure des tuples, des chaaînes et des listes).

Vous pouvez utiliser une compréhension de liste avec une instruction Python if‚Ķelse à l’intérieur :

Cette compréhension ajoute des éléments à la liste uniquement s’ils remplissent la condition spécifiée.

L’utilisation des compréhensions de liste vous permet de créer une nouvelle liste à partir d’une liste existante sans définir pour complet déclarations. pour stat Les éléments prennent au moins deux lignes de code alors que vous pouvez écrire une compréhension de liste sur une seule ligne.

Certaines personnes disent que les compréhensions de liste sont davantage du code Python. C’est parce qu’ils sont plus efficaces que d’utiliser une courte instruction for.

Exemple de compréhension de liste Python

Supposons que nous voulions faire une liste de tous les poulets pizzas que nous vendons dans notre magasin. Nous allons déplacer toutes les pizzas au poulet dans une catégorie Poulet sur notre menu. Pour ce faire, nous pourrions filtrer nos pizzas à l’aide des instructions for. Ou, nous pourrions filtrer notre liste en utilisant une compréhension de liste.

Nous pourrions utiliser une compréhension de liste pour générer une nouvelle liste de pizzas dont les noms contiennent Poulet sur la base de notre liste existante de pizzas . Nous pourrions le faire en utilisant ce code :

Notre la compréhension renvoie la liste de sortie suivante :

Dans notre code, nous définissons d’abord une liste de pizzas sur notre menu. Nos pizzas sont stockées dans la variable Python appelée pizzas. Ensuite, nous utilisons une compréhension de liste pour créer une nouvelle liste de pizzas dont les noms contiennent Poulet.

Notre compréhension de liste se compose des parties suivantes :

  • p : c’est la valeur à ajouter à notre liste.
  • pour p dans les pizzas : cela parcourt chaque pizza de notre " pizzas" liste.
  • if "Poulet‚" en p : cela vérifie si chaque pizza contient du "Poulet". Si cela est évalué à True, la valeur stockée dans "p‚" est ajouté à notre liste.

Notre liste de compréhension n’a pris qu’une seule ligne de code. Alors que dans notre exemple suivant, nous devons utiliser trois lignes de code avec une instruction for pour faire cela fonctionne. Notre exemple suivant montre dans quelle mesure les compréhensions de liste vous aident à écrire un code plus propre.

Sans une compréhension de liste

Revenons à l’exemple de la pizza au poulet. Sans utiliser un compréhension de liste, si nous voulions générer une liste de pizzas au poulet sur notre menu, nous utiliserions ce code :

Notre code renvoie :

Tout d’abord, nous définissons deux listes. Une liste stocke une liste de pizzas vendues dans notre magasin. L’autre liste stocke une liste de toutes les pizzas au poulet que nous vendons. La liste des pizzas au poulet que nous vendons est initialement vide.

Nous utilisons un "for‚" déclaration pour parcourir chaque pizza de notre liste de pizzas. Ensuite, nous vérifions si chaque pizza contient le mot Poulet. Si une pizza contient le mot Poulet, nous ajoutons cette pizza à notre liste de pizzas au poulet. Dans ce cas, trois pizzas contiennent du Poulet, et ces trois pizzas sont ajoutées à notre liste de pizzas au poulet.

"Carrière Karma est entrée dans ma vie quand J’en avais le plus besoin et m’a rapidement aidé à suivre un bootcamp. Deux mois après l’obtention de mon diplôme, j’ai trouvé l’emploi de mes rêves qui correspondait à mes valeurs et à mes objectifs dans la vie !"

Venus, Software Engineer chez Rockbot

Comme vous pouvez le voir, pour vérifier si une pizza contient du Poulet et pour l’ajouter à notre liste, nous utilisons trois lignes de code. Il existe un moyen plus efficace d’écrire ce code : en utilisant des compréhensions de liste.

Compréhensions de liste en utilisant if‚Ķelse

Vous pouvez également utiliser un if‚Ķelse déclaration avec une compréhension de liste.

Auparavant, nous utilisions une instruction if pour ajouter une pizza à notre liste de pizzas au poulet. Nous n’ajoutions une pizza que si le nom de la pizza comprenait le terme Poulet. Mais supposons que nous fassions une liste des pizzas végétariennes.

Nous voulons ajouter "Viande" à une liste si un nom de pizza contient du Poulet et Végétarienne si le nom d’une pizza ne contient pas de Poulet.

Cela peut être fait en utilisant une compréhension de liste :

Notre code renvoie :

Décomposons notre code. Tout d’abord, nous déclarons une liste de pizzas appelées pizzas. Ensuite, nous utilisons une compréhension de liste pour évaluer si un nom de pizza contient du Poulet ou non.

Si un nom de pizza contient du Poulet, la valeur La viande est ajoutée à notre liste is_veggie. Sinon, la valeur Végétarien est ajoutée.

Comme vous pouvez le voir, la première valeur de notre liste is_veggie est Viande , car sa valeur correspondante dans la liste des pizzas est Poulet. Mais, notre prochaine valeur est Végétarienne, car sa valeur correspondante dans la liste des pizzas est Margherita, qui ne contient pas de Poulet.



Conclusion

Les compréhensions de liste vous permettent de créer un nouvelle liste basée sur une liste existante. √Ä l’aide des compréhensions de liste, vous pouvez créer une copie d’une liste ou créer une nouvelle liste qui filtre les valeurs d’une ancienne liste.

Ce didacticiel a expliqué, en se référant à des exemples, les bases des listes Python et comment d’utiliser la technique de compréhension de liste pour créer de nouvelles listes.

Voulez-vous en savoir plus sur le codage en Python ? Consultez notre Guide d’apprentissage de Python. Ce guide contient une liste de ressources d’apprentissage pour vous aider à poursuivre votre cheminement vers la maaîtrise de Python.