Kodokon kodokon.com

Boucles : for, while, break et continue

Vous répétez des instructions avec for et while, et contrôlez vos boucles avec range, break et continue.

8 min · 3 questions

Ouvrir cette leçon dans Kodokon

Une boucle répète un bloc d'instructions plusieurs fois, sans que vous ayez à le recopier. La boucle for répète un nombre de fois connu à l'avance. Elle s'utilise souvent avec range, une fonction qui produit une suite de nombres : range(5) donne 0, 1, 2, 3, 4 (on part de 0 et la borne de fin est exclue). Comme pour if, la ligne se termine par : et le bloc répété est indenté de 4 espaces.

PYTHON
for number in range(5):
    print(number)
Affiche les nombres de 0 à 4, un par ligne.

range accepte aussi un début : range(1, 6) donne 1, 2, 3, 4, 5. La boucle while (« tant que »), elle, répète son bloc tant qu'une condition est vraie. On l'utilise quand on ne connaît pas d'avance le nombre de tours. Attention : le bloc doit faire évoluer la condition, sinon la boucle ne s'arrête jamais.

PYTHON
countdown = 3
while countdown > 0:
    print(countdown)
    countdown = countdown - 1
print("Partez !")
Affiche 3, 2, 1 puis « Partez ! » : countdown diminue à chaque tour.

Deux mots-clés permettent de contrôler une boucle de l'intérieur : break sort immédiatement de la boucle, et continue saute au tour suivant sans exécuter la suite du bloc. Dans l'exemple ci-dessous, % donne le reste d'une division : number % 2 == 0 teste donc si un nombre est pair.

PYTHON
for number in range(10):
    if number == 5:
        break
    if number % 2 == 0:
        continue
    print(number)
Affiche 1 puis 3 : les nombres pairs sont sautés, et la boucle s'arrête à 5.

Quiz de validation

Vérifiez que vous avez bien retenu les points clés de cette leçon.

  1. Combien de fois le bloc de for i in range(3): s'exécute-t-il ?
    • 2 fois
    • 3 fois
    • 4 fois
  2. Que fait le mot-clé break dans une boucle ?
    • Il met la boucle en pause
    • Il sort immédiatement de la boucle
    • Il recommence la boucle depuis le début
    • Il passe au tour suivant
  3. Que se passe-t-il si la condition d'un while reste toujours vraie ?
    • La boucle ne s'arrête jamais
    • Python corrige le programme automatiquement
    • La boucle ne s'exécute qu'une seule fois