while
while répète un bloc tant qu'une condition reste vraie, sans savoir à l'avance combien de tours il faudra. On l'emploie pour une simulation, une relance ou une recherche qui s'arrête sur un seuil.
- répétition
- condition
- break
- boucle infinie
- seuil
Syntaxe
while condition: ...while True: ... if arret: breakExemple
# Combien d'années pour doubler un capital placé à 3 % par an ?capital = 1000.0annees = 0while capital < 2000: capital *= 1.03 annees += 1print(annees) # → 24print(round(capital, 2)) # → 2032.79À retenir
- Le corps de la boucle doit faire évoluer la condition (ici, capital augmente à chaque tour), sinon elle ne s'arrête jamais.
- while True: suivi d'un if … break est la forme la plus lisible quand le test d'arrêt tombe au milieu du bloc.
- Préférez for dès que vous parcourez une collection ou que le nombre de tours est connu.
- Piège : une boucle infinie dans l'éditeur bloque l'exécution. Pendant la mise au point, ajoutez une garde de sécurité, par exemple and tours < 1000 dans la condition.
Voir aussi
- forfor parcourt un à un les éléments d'une collection : liste, chaîne, dictionnaire, range ou fichier. C'est la boucle de base pour cumuler, compter ou transformer une série de valeurs.
- if / elif / elseif, elif et else exécutent un bloc selon qu'une condition est vraie ou fausse. On s'en sert pour classer une valeur (mention, tranche de prix) ou écarter un cas particulier avant un calcul.