Compréhension de liste en Python (avec exemples)

Publié: 2021-08-22

Python est l'un des langages de programmation les plus populaires au monde. En 2020, il s'est classé deuxième dans le classement RedMonk de la popularité des langages de programmation . La raison de sa grande popularité est son code facile à comprendre et sa simplicité. Écrire du code en python est assez simple si vous connaissez la syntaxe. L'un de ses points forts uniques est sa fonction de compréhension de liste. Vous pouvez effectuer la compréhension Python pour les listes en écrivant une seule ligne de code !

Les points suivants illustreront ce qu'est la compréhension de liste et comment vous pouvez l'utiliser dans différents contextes. Nous couvrirons également les différences présentes entre la compréhension de liste et les boucles for, qui peuvent être assez déroutantes. Vous découvrirez également d'autres fonctions connexes et comment les utiliser :

Table des matières

Qu'est-ce que la compréhension de liste Python ?

Python offre plusieurs façons de créer des listes. L'un des moyens les plus efficaces parmi eux est la fonction de compréhension de liste. Il vous permet de créer des listes en écrivant une seule ligne de code.

Vous pouvez utiliser les compréhensions de liste pour créer de nouvelles listes à partir d'autres éléments itérables tels que des tableaux, des chaînes, des tuples, des listes, etc. Il est composé de crochets avec l'expression. Le système exécute l'expression pour chaque élément avec la boucle for pour itérer sur chaque élément.

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

your_new_list = [expression pour élément dans your_old_list si condition]

Ici, your_new_list est la nouvelle liste (ou le résultat). L'expression dépend de la variable que vous avez utilisée pour chaque élément de votre_ancienne_liste. Enfin, la "condition si" est le filtre.

Il existe de nombreuses raisons pour lesquelles les développeurs Python préfèrent la compréhension de liste aux boucles. La principale raison est l'efficacité. Vous pouvez créer une liste avec beaucoup moins d'effort et de code en utilisant la compréhension de liste que vous ne le feriez en utilisant des boucles

Comme elle prend moins de lignes de code que de boucles, la compréhension de liste vous fait également gagner beaucoup de temps. Il garde le code simple et le rend plus convivial. De plus, la compréhension de liste couvre une déclaration itérative dans une formule. Si vous souhaitez acquérir plus d'expertise sur Python, consultez nos programmes de science des données des meilleures universités.

Lister des exemples Python de compréhension

Nous partageons plusieurs exemples d'utilisation de la compréhension de liste en Python. Il serait préférable de les étudier et de les reproduire dans votre propre programme après avoir compris leur fonctionnement. Cela vous aiderait à bien comprendre à quel point la compréhension d'une liste d'outils est vraiment efficace :

Exemple 1:

Dans cet exemple, nous allons créer une liste simple en utilisant la compréhension Python :

Entrée :

a = [i pour i dans la plage (5)]

imprimer un

Sortie :

[0, 1, 2, 3, 4]

Exemple 2 :

Dans l'exemple ci-dessous, nous allons créer une liste avec des multiples de deux :

Entrée :

new_list = [a*2 pour a dans la plage (10)]

Sortir

[0, 2, 4, 6, 8, 10, 12, 14, 16, 18]

Exemple 3

Vous pouvez multiplier chaque élément d'une liste en utilisant la compréhension de liste :

Contribution

ancienne_liste = [1, 2, 3]

new_list = [item*2 pour l'item dans old_list]

imprimer nouvelle_liste

Sortir

[2, 4, 6]

Exemple 4

La compréhension de liste n'est pas limitée aux seuls entiers, vous pouvez également l'utiliser avec des chaînes. Dans cet exemple, nous utiliserons la compréhension de liste pour créer une liste de la première lettre de chaque mot de notre liste d'origine.

Entrée :

my_list = ["upgrad", "est", "fun"]

résultat = [mot[0] pour mot dans ma_liste]

résultat d'impression

Sortir

['u', 'je', 'f']

Exemple 5

Vous pouvez également extraire des nombres d'une chaîne en utilisant la compréhension de liste

Entrée :

old_list = "upGrad 123 est amusant"

new_list = [x pour x dans la chaîne si x.isdigit()]

imprimer nouvelle_liste

Sortie :

['1', '2', '3']

Exemple 6 :

Vous pouvez également utiliser la compréhension de liste avec des fonctions, qui sont une partie essentielle des implémentations mathématiques de Python :

Contribution

# d'abord, nous allons créer une fonction appelée triple

def triple(x

retour x*3

# vous avez maintenant une fonction de travail qui imprime un résultat si vous entrez une valeur valide

>>> impression triple(2)

Sortie :

6

Vous pouvez maintenant utiliser la compréhension de liste avec cette fonction pour créer plus de listes

Entrée :

>>> [triple(x) pour x dans la plage(5)]

impression triple

Sortie :

[0, 3, 6, 9, 12]

Différence entre la compréhension de liste et la boucle for

Une manière courante de parcourir une liste consiste à utiliser la boucle for. Cependant, la compréhension de liste est une méthode plus efficace pour parcourir une liste car elle vous permet d'effectuer la tâche avec moins de lignes de code.

Voici un exemple pour illustrer la différence. Nous allons commencer avec une liste vide et la modifier pour en faire une liste de nombres pairs :

Contribution

# création de la liste vide

ancienne_liste = []

# utiliser la boucle for pour créer la nouvelle liste

pour x dans la plage (5):

ancienne_liste.append(x*2)

imprimer old_list

Sortie :

[0, 2, 4, 6, 8]

Comme vous pouvez le voir, la boucle for vous oblige à utiliser la fonction append pour créer la nouvelle liste. Vous deviez également créer d'abord une liste vide afin de pouvoir utiliser la boucle pour la modifier. Cependant, avec la compréhension de liste, vous n'auriez pas besoin d'utiliser une autre fonction car vous pouvez terminer la tâche avec une seule ligne de code :

Entrée :

# création de l'ensemble en utilisant la compréhension de liste

old_list = [x*2 pour x dans la plage (5)]

imprimer old_list

Sortie :

[0, 2, 4, 6, 8]

Comme la compréhension de liste prend moins d'espace et de code, elle nécessite également moins de puissance de calcul que l'utilisation d'une boucle for. Ceci est avantageux lorsque vous travaillez sur de gros programmes, car l'efficacité devient un problème clé lorsque le code est considérablement long.

Cependant, lorsque vous utilisez la compréhension de liste, vous devez éviter d'utiliser celles qui sont trop longues sur une seule ligne. Sinon, le code ne resterait pas convivial et il peut être assez difficile de partager votre travail avec d'autres développeurs. Gardez à l'esprit que vous réécrivez chaque compréhension de liste dans une boucle for mais vous ne pouvez pas réécrire chaque boucle for dans une compréhension de liste.

La compréhension de liste est l'une des nombreuses fonctionnalités de compréhension Python présentes dans ce langage de programmation. Une autre fonctionnalité de compréhension très populaire est la compréhension du dictionnaire :

Qu'est-ce que la compréhension du dictionnaire en Python ?

La compréhension du dictionnaire, comme son nom l'indique, vous permet de créer des dictionnaires en Python. La syntaxe d'une compréhension de dictionnaire est :

{k:v pour (k,v) dans itérable}

Ici, k représente la clé et v représente la valeur.

Voyons ça au travail. Dans l'exemple suivant, nous allons créer deux listes et utiliser la compréhension du dictionnaire pour générer un dictionnaire à partir de celles-ci :

Entrée :

# utiliser Python pour mettre en valeur la compréhension du dictionnaire

# création de deux listes pour représenter les clés et les valeurs

touches = [1, 2, 3, 4, 5]

valeurs = ['a', 'b', 'c' 'd', 'e']

# implémenter la compréhension du dictionnaire

new_dict = { k:v for (k,v) in zip(keys, values)}

imprimer nouveau_dict

Sortie :

{1 : 'a', 2 : 'b', 3 : 'c', 4 : 'd'. 5 : 'e'}

La compréhension du dictionnaire facilite la création de dictionnaires en Python. Cependant, vous pouvez également utiliser la compréhension de liste pour générer un dictionnaire. Dans l'exemple suivant, nous allons utiliser la compréhension de liste et créer un dictionnaire :

Entrée :

new_dict = {x : x*2 pour x dans [5, 4, 3, 2, 1]}

imprimer nouveau_dict

Sortie :

{5 : 10, 4 : 8, 3 : 6, 2 : 4, 1 : 2}

Devenir un expert Python

La compréhension de liste est l'une des nombreuses fonctionnalités présentes dans Python. C'est un langage de programmation très polyvalent et utile. De plus, la syntaxe de Python est également très facile à comprendre et demande un peu d'effort pour s'y habituer. Outre ces avantages, Python propose également de nombreuses bibliothèques à ses utilisateurs.

Il possède une communauté florissante de développeurs et de programmeurs qui ajoutent régulièrement de nouvelles bibliothèques à sa collection. Les nombreuses bibliothèques et fonctions disponibles pour Python le rendent utile dans différents secteurs tels que le développement de logiciels, la science des données, l'apprentissage automatique et autres.

Si vous souhaitez apprendre Python, vous devez l'apprendre dans le contexte du champ que vous souhaitez saisir. Aussi, les recruteurs recherchent toujours des professionnels certifiés dans ce domaine car cela leur assure de l'expertise du candidat.

Pour ces raisons, il serait préférable de suivre un cours de python si vous souhaitez poursuivre une carrière avec cette compétence. L'Institut international des technologies de l'information de Bangalore propose un programme exécutif PG en développement de logiciels avec upGrad, parfait pour ceux qui souhaitent devenir des experts de ce langage de programmation et poursuivre une carrière dans la technologie. Le cours vous donnera un moyen bien structuré d'étudier Python et d'autres technologies tendances pour vous aider à entrer dans l'industrie en tant que professionnel prêt à l'emploi.

upGrad compte plus de 40 000 apprenants rémunérés dans plus de 85 pays. Rejoindre ce programme vous permettra également de réseauter à l'échelle internationale grâce à la vaste base d'apprenants d'upGrad. Le cours Executive PG Program in Software Development est un programme en ligne qui dure 13 mois. Il ne nécessite qu'un engagement de temps de 15 heures par semaine.

Le programme propose six spécialisations au choix

  • La cyber-sécurité
  • DevOps
  • Cloud computing
  • Big Data
  • Développement de la blockchain
  • Développement full-stack

Outre ces avantages, upGrad propose également une assistance professionnelle à 360 degrés avec ce programme afin que vous puissiez démarrer votre carrière facilement. Vous pouvez en savoir plus sur le cours ici: Programme exécutif PG en développement de logiciels .

Conclusion

Vous pouvez d'abord essayer la compréhension de liste avec des listes simples, puis passer à des applications plus complexes de cette fonctionnalité. La compréhension de liste est un exemple de la flexibilité et de la robustesse de la programmation Python.

Que pensez-vous de la compréhension de liste ? Comment l'utiliseriez-vous dans votre programme ?

Que fait la compréhension de liste en Python ?

Compréhension des listes Python vous permet de créer des listes de manière efficace et en n'utilisant qu'une seule ligne de code. C'est l'une des fonctionnalités les plus robustes de Python.

Qu'est-ce que la compréhension du dictionnaire ?

La compréhension du dictionnaire vous permet de créer des dictionnaires pour deux listes. Il utilise des clés et des valeurs pour créer le dictionnaire requis.

La compréhension de la liste est-elle meilleure que la boucle for ?

Oui, dans la plupart des cas, la compréhension de liste est une bien meilleure façon de créer des listes. Cela nécessite moins de code, de temps et de puissance de calcul que les boucles for pour générer des listes.