Aller au contenu principal

🔁 Structures répétitives

Les structures répétitives permettent d'exécuter un bloc de code plusieurs fois en Python.


🔹 Boucle while

Exécute un bloc tant qu'une condition est vraie.

compteur = 0

while compteur < 3:
print(compteur)
compteur += 1

🔹 Boucle for — parcours direct

Parcourt directement les éléments d'une liste, sans avoir besoin de l'index.

heros = ["Mario", "Link", "Kirby", "Sonic"]

for hero in heros:
print(hero) # Affiche chaque héros de la liste

🔹 Boucle for — parcours par index avec range(len(...))

Utile quand la position dans la liste a de l'importance, ou pour parcourir plusieurs listes en parallèle au même index.

heros = ["Mario", "Link", "Kirby", "Sonic"]
annees_creation = [1981, 1986, 1992, 1991]

for i in range(len(heros)):
print(heros[i], annees_creation[i]) # Accès aux deux listes en parallèle

🔹 Plage de nombres : range()

Génère une séquence de nombres.

# i vaut 0, puis 1, puis 2, puis 3, puis 4 → 5 tours
for i in range(5):
print(i)
# i commence à 1 et s'arrête avant 6 → affiche 1 à 5
for i in range(1, 6):
print(i)
# i avance de 2 en 2 → affiche seulement les pairs
for i in range(0, 11, 2):
print(i)
# step négatif → i descend de 5 jusqu'à 1
for i in range(5, 0, -1):
print(i)

🔹 Parcours avec index : enumerate()

Permet d'obtenir à la fois l'index et la valeur lors d'un parcours.

heros = ["Mario", "Link", "Kirby", "Sonic"]

for i, hero in enumerate(heros):
print(i, hero)

🔹 Boucles imbriquées

Une boucle peut en contenir une autre. La boucle intérieure s'exécute entièrement à chaque tour de la boucle extérieure.

# Affiche un rectangle de # (largeur x hauteur)
for i in range(3): # Boucle pour chaque ligne
for j in range(5): # Boucle pour chaque colonne
print('#', end='') # Affiche un # sans saut de ligne
print() # Nouvelle ligne après chaque ligne

🔹 Instructions utiles dans les boucles

InstructionDescriptionExemple
breakInterrompt la boucle immédiatementbreak dans un for ou while
continuePasse à l'itération suivanteSaute un tour sans interrompre
passNe fait rien, sert de placeholderUtile dans une structure vide en développement