Maîtriser les boucles Python : For, While, Break, Continue et Enumerate expliqués
Maîtriser les boucles Python : For, While, Break, Continue et Enumerate expliqués
Les boucles sont l'épine dorsale de la programmation itérative. Elles permettent d'exécuter un bloc de code répétitivement jusqu'à ce qu'une condition soit remplie. Python offre deux constructions de boucle principales : for (itérateurs) et while (basées sur condition).
Qu'est-ce qu'une boucle ?
Une boucle exécute répétitivement un ensemble d'instructions. En Python, les boucles sont utilisées pour traiter des collections, générer des séquences, ou exécuter des tâches jusqu'à un critère d'arrêt.
Boucles For (Itérateurs)
Une boucle for itère sur les éléments d'un itérable — listes, tuples, chaînes, ou ranges. Elle s'arrête automatiquement quand l'itérable est épuisé, la rendant plus sûre que le suivi manuel d'indices.
x = 0
for x in range(2, 7):
print(x)
Sortie :
2
3
4
5
6
Boucles While (Basées sur condition)
Une boucle while répète tant qu'une expression booléenne donnée reste True. Idéale quand le nombre d'itérations n'est pas connu à l'avance.
x = 0
while x < 4:
print(x)
x += 1
Sortie :
0
1
2
3
Boucler sur des collections non-numériques
Les boucles for fonctionnent parfaitement avec les chaînes et autres collections :
mois = ['Jan', 'Fév', 'Mar', 'Avr', 'Mai', 'Juin']
for m in mois:
print(m)
Sortie :
Jan
Fév
Mar
Avr
Mai
Juin
Sortir d'une boucle avec break
L'instruction break termine la boucle immédiatement. Utile pour une sortie précoce quand une condition est remplie.
for x in range(10, 20):
if x == 15:
break
print(x)
Sortie :
10
11
12
13
14
Passer une itération avec continue
L'instruction continue saute le reste du corps de boucle pour l'itération courante et passe au cycle suivant.
for x in range(10, 20):
if x % 5 == 0:
continue
print(x)
Sortie :
11
12
13
14
16
17
18
19
Utiliser enumerate() pour boucles indexées
La fonction intégrée enumerate() ajoute un compteur à un itérable, retournant des paires index-valeur.
mois = ['Jan', 'Fév', 'Mar', 'Avr', 'Mai', 'Juin']
for i, m in enumerate(mois):
print(i, m)
Sortie :
0 Jan
1 Fév
2 Mar
3 Avr
4 Mai
5 Juin
Répéter une instruction plusieurs fois
Vous pouvez utiliser une boucle for sur une chaîne de chiffres ou un range pour répéter un message :
for i in '123':
print('guru99', i)
Sortie :
guru99 1
guru99 2
guru99 3
Tableau récapitulatif complet
| Type de boucle | Code |
|---|---|
| Boucle while | x = 0
while x < 4:
print(x)
x += 1 |
| Boucle for (numérique) | for x in range(2, 7):
print(x) |
| Boucle for (chaîne) | mois = ['Jan', 'Fév', 'Mar', 'Avr', 'Mai', 'Juin']
for m in mois:
print(m) |
| Break dans boucle for | for x in range(10, 20):
if x == 15:
break
print(x) |
| Continue dans boucle for | for x in range(10, 20):
if x % 5 == 0:
continue
print(x) |
| Enumerate dans boucle for | mois = ['Jan', 'Fév', 'Mar', 'Avr', 'Mai', 'Juin']
for i, m in enumerate(mois):
print(i, m) |
Compatibilité Python 2
Les exemples ci-dessus sont en syntaxe Python 3. Pour Python 2, remplacez print() par des instructions print et ajustez le comportement de range en conséquence.
# Boucle while
x = 0
while x < 4:
print x
x += 1
# Boucle for
for x in range(2, 7):
print x
# Boucle for sur chaîne
mois = ['Jan', 'Fév', 'Mar', 'Avr', 'Mai', 'Juin']
for m in mois:
print m
# Exemple break
for x in range(10, 20):
if x == 15:
break
print x
# Exemple continue
for x in range(10, 20):
if x % 5 == 0:
continue
print x
# Exemple enumerate
for i, m in enumerate(mois):
print i, m
Sortie :
0
1
2
3
2
3
4
5
6
Jan
Fév
Mar
Avr
Mai
Juin
10
11
12
13
14
11
12
13
14
16
17
18
19
0 Jan
1 Fév
2 Mar
3 Avr
4 Mai
5 Juin
Pour des références plus approfondies, consultez le tutoriel officiel Python sur le contrôle de flux.
Python
- Maîtriser les boucles While et Do-While en C# : Syntaxe, exemples et bonnes pratiques
- Instruction Break C# : Comment et quand l'utiliser
- Maîtriser l'instruction Continue C# : Comment ignorer efficacement les itérations de boucle
- Instructions, indentation et commentaires en Python : Guide clair
- Maîtriser l'instruction pass en Python : Guide pratique
- Vérificateur de nombre palindrome en Java : algorithmes avec boucles while et for
- Maîtriser les boucles Python : For, While, Break, Continue et Enumerate expliqués
- Maîtriser la fonction Python range() : des bases aux cas avancés
- Maîtriser enumerate() en Python : boucler avec indices pour listes, tuples, chaînes et dictionnaires