Adloun

Parcourir par valeur ou par indice

Application directe du cours · niveau 2 · sciences numériques et technologie (seconde), chapitre 6 — Listes et simulations aléatoires · Manipuler une liste

Énoncé

Ces deux boucles affichent-elles la même chose pour L = [3, 8, 5] ? Dans quel cas doit-on préférer la seconde ?

# (a)
for x in L:
    print(x)

# (b)
for i in range(len(L)):
    print(L[i])

Corrigé

Les deux affichent 3, 8, 5 : le résultat est identique.

La forme (a) dit ce qu'elle fait — « pour chaque élément de la liste » — et se lit mieux. C'est celle qu'on choisit par défaut.

La forme (b) est nécessaire dès qu'on a besoin de la position : pour afficher le rang à côté de la valeur, pour modifier un élément (L[i] = ...), ou pour comparer deux éléments voisins (L[i] et L[i+1]). La forme (a) ne donne que les valeurs, jamais leur emplacement.

Les autres exercices de ce chapitre Le cours du chapitre

Un blocage sur cet exercice ? Le tuteur d'Adloun guide par questions, sans donner la réponse.