Comment parcourir une liste en Python ?
Comment parcourir un objet de type list en Python ? Découvrons ensemble comment faire et quelles sont les meilleures manières d’itérer sur une liste.
1. Avec une boucle for
La manière la plus simple de parcourir une liste est à l’aide d’une boucle for.
💡 Vous voulez apprendre comment les boucles for fonctionnent ? Alors je vous recommande la lecture de mon article sur les boucles for en Python.
lettres = ['a', 'b', 'c', 'd']
for lettre in lettres:
print(lettre)
On a une liste lettres
, on utilise l’expression for ... in ...
de python pour parcourir la liste en affichant la variable lettre
à chaque passage dans la boucle.
2. Avec une compréhension de liste
La manière la plus courte est d’utiliser une compréhension de liste. Seul inconvenient dans cet exemple, on crée une nouvelle liste pour rien vu qu’on n’a pas besoin de la liste retournée comme on ne fait que print
sa valeur.
lettres = ['a', 'b', 'c', 'd']
[print(lettre) for lettre in lettres]
Une compréhension de liste est une expression Python qui permet de créer un objet comme une liste ou un dictionnaire en une seule ligne. Cet exemple est pratiquement pareil que la version plus longue qu’on a vu avec une boucle for.
💡 Vous voulez en apprendre plus sur cette syntaxe pour construire des listes en Python ? Alors mon article Comment utiliser les listes en compréhension ? vous intéressera sûrement !
3. Avec range et une boucle for
On peut utiliser la fonction native range
pour parcourir la liste avec un index en fonction de sa longueur.
💡 Vous voulez apprendre plus sur la fonction range ? Alors je vous recommande la lecture de mon article sur la fonction range en Python.
lettres = ['a', 'b', 'c', 'd']
longueur = len(lettres)
for i in range(longueur):
print(lettres[i])
On déclare la longueur de la liste puis on utilise range
qui va créer un itérable sur lequel on va boucler. On lit la lettre qui est à l’index i
de la liste lettres
chaque passage dans la boucle.
4. Avec une boucle while
Une boucle while va itérer tant que la condition n’est pas remplie. On peut donc utiliser un indice et itérer sur une liste en fonction de sa taille. Attention à ne pas oublier d’incrémenter notre index manuellement.
lettres = ['a', 'b', 'c', 'd']
longueur = len(lettres)
i = 0
while i < longueur:
print(lettres[i])
i += 1
On récupère la longueur
de la liste lettres
et on définit notre variable i
à 0. On va ensuite boucler tant que i est inférieur à la longueur de lettres, en n’oubliant pas d’incrémenter i de 1 à chaque passage dans la boucle pour éviter de partir en boucle infinie.
5. Avec la fonction enumerate
En Python, la fonction enumerate
crée des objets de type tuple
. L’appliquer sur une liste nous donne l’indice et la valeur de chaque élément de la liste.
lettres = ['a', 'b', 'c', 'd']
for _, lettre in enumerate(lettres):
print(lettre)
Pour afficher le contenu du résultat de la fonction native enumerate
en Python, on peut la cast dans une liste par exemple :
lettres = ['a', 'b', 'c', 'd']
print(list(enumerate(lettres)))
Donnera :
[(0, 'a'), (1, 'b'), (2, 'c'), (3, 'd')]
Quelles sont les autres manières de parcourir une liste en Python ?
Bravo ! Vous connaissez 5 méthodes de plus pour parcourir une liste en Python !
Pour rappel, la manière la plus simple est d’utiliser une boucle for :
for i in [1, 2, 3]:
... # on fait quelque chose avec i qui vaut 1, 2 puis 3
Et la plus courte est avec une compréhension de liste
[... for i in [1, 2, 3]]
Vous en connaissez une autre ? Dites la nous sur Twitter !
Si vous avez aimé cet article, vous aimerez aussi sûrement :
Top 10 des meilleurs livres pour apprendre Python en 2024
12 des meilleurs cours Python en Français
Je m'appelle Thomas, et je code depuis plus de 20 ans. Depuis ma sortie de la première promotion de l'École 42, j'ai conçu et développé des centaines d'applications et de sites web. Sur ce blog, je partage avec vous les stratégies les plus efficaces pour maîtriser l'art de coder et progresser rapidement.