Python possède deux types de boucles : les boucles for et les boucles while. Si les boucles for itèrent sur une liste (itérable) élément par élément, une boucle while, en revanche, répète les instructions à l'intérieur de son corps tant que la condition du while est satisfaite. En ce sens, elle est très similaire à une instruction if. Elle exécute les instructions à l'intérieur de la boucle while si la condition est remplie :
i = 0
while i < 5:
print('Current i is:', i)
i += 1
print('Done')
Current i is: 0
Current i is: 1
Current i is: 2
Current i is: 3
Current i is: 4
Done
The program on the left will print this output
Initialement, i est fixé à 0 ⇒ i = 0.
Ensuite, le programme vérifie si i < 5 et comme 0 < 5, il entre dans le corps du while.
Le programme affiche Current i is: 0.
La variable i augmente de 1 pour devenir i = 1.
Le programme retourne à la condition et vérifie si i < 5. Comme 1 < 5 ⇒ il entre dans le corps du while.
Le programme affiche Current i is: 1.
La variable i augmente de 1 pour devenir i = 2.
Le programme vérifie si i < 5. 2 < 5 ⇒ il entre dans le corps du while.
Le programme affiche Current i is: 2.
La variable i augmente de 1 pour devenir i = 3.
Le programme vérifie si i < 5. 3 < 5 ⇒ il entre dans le corps du while.
Le programme affiche Current i is: 3.
La variable i augmente de 1 pour devenir i = 4.
Le programme vérifie si i < 5. 4 < 5 ⇒ il entre dans le corps du while.
Le programme affiche Current i is: 4.
La variable i augmente de 1 pour devenir i = 5.
Le programme vérifie si i < 5. 5 = 5 ⇒ Le programme sort de la boucle while et affiche Done.
Défi
Étant donné un entier positif n. Affichez la valeur de n tant qu'elle est supérieure à 0 et divisez-la par 2 (ne prenez que la partie entière).