Comment parcourir une liste en Python ?

Article publié le et mis à jour le .

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

La fonction range en Python

Les exposants en Python

Les Boucles For en Python

9 idées de projets en Python pour débutants

Python vs Java : Quel est le meilleur langage en 2024 ?