Introduction
Les boucles sont des structures fondamentales en programmation qui permettent d’exécuter un bloc de code plusieurs fois. En Python, il existe deux types de boucles principales : les boucles for
et les boucles while
. Ces boucles sont utilisées pour répéter une action jusqu’à ce qu’une condition donnée soit remplie ou pour parcourir des collections de données comme les listes ou les dictionnaires.
Dans cet article, nous allons découvrir en détail le fonctionnement des boucles for
et while
en Python, leurs différences, et quand les utiliser.
1. La boucle for
en Python
La boucle for
est utilisée pour parcourir une séquence d'éléments comme une liste, un tuple, une chaîne de caractères, ou un dictionnaire. Elle est idéale lorsque vous connaissez le nombre d'itérations à l'avance ou lorsque vous souhaitez parcourir une collection.
1.1. Syntaxe de la boucle for
for element in sequence:
# bloc de code à exécuter pour chaque élément
Exemple : Parcourir une liste
fruits = ["pomme", "banane", "cerise"]
for fruit in fruits:
print(fruit)
Dans cet exemple, Python parcourt chaque élément de la liste fruits
et affiche son contenu.
1.2. Utiliser range()
avec for
La fonction range()
est souvent utilisée avec for
pour générer une séquence de nombres.
for i in range(5):
print(i) # Affiche les nombres de 0 à 4
Par défaut, range()
génère des nombres de 0 à un certain nombre non inclus (ici 5). Vous pouvez aussi spécifier une plage de départ et un pas.
Exemple :
for i in range(2, 10, 2):
print(i) # Affiche 2, 4, 6, 8
1.3. Parcourir des dictionnaires avec for
Lorsque vous travaillez avec des dictionnaires, la boucle for
permet de parcourir les clés, les valeurs, ou les deux.
etudiant = {"nom": "Alice", "age": 25, "ville": "Paris"}
# Parcourir les clés
for cle in etudiant:
print(cle)
# Parcourir les valeurs
for valeur in etudiant.values():
print(valeur)
# Parcourir les clés et les valeurs
for cle, valeur in etudiant.items():
print(f"{cle} : {valeur}")
2. La boucle while
en Python
La boucle while
permet d'exécuter un bloc de code tant qu'une condition est vraie. Elle est idéale lorsque vous ne savez pas à l’avance combien de fois vous devrez répéter l'opération, mais vous voulez continuer jusqu’à ce qu'une certaine condition soit remplie.
2.1. Syntaxe de la boucle while
while condition:
# bloc de code à exécuter tant que la condition est vraie
Exemple : Compter avec while
compteur = 0
while compteur < 5:
print(compteur)
compteur += 1
Dans cet exemple, le bloc de code continue de s'exécuter tant que la variable compteur
est inférieure à 5. Une fois que compteur
atteint 5, la boucle se termine.
2.2. Boucles infinies
Une boucle while
peut conduire à une boucle infinie si la condition ne devient jamais fausse. Cela peut arriver si vous oubliez d’incrémenter une variable ou de modifier la condition de sortie.
# Exemple d'une boucle infinie
while True:
print("Ceci est une boucle infinie")
break # Utilisation de break pour sortir de la boucle
3. Contrôler l'exécution des boucles : break
et continue
Python propose deux instructions utiles pour contrôler l'exécution des boucles : break
et continue
.
3.1. L'instruction break
L'instruction break
permet de sortir immédiatement d'une boucle, même si la condition n'est pas encore fausse.
for i in range(10):
if i == 5:
break # Sortir de la boucle quand i vaut 5
print(i)
3.2. L'instruction continue
L'instruction continue
permet de sauter à l'itération suivante de la boucle sans exécuter le reste du code du bloc actuel.
for i in range(5):
if i == 3:
continue # Saute l'itération quand i vaut 3
print(i) # Affiche 0, 1, 2, 4
4. Boucles imbriquées
Vous pouvez imbriquer des boucles for
ou while
l'une dans l'autre pour parcourir des structures plus complexes, comme des matrices ou des listes de listes.
Exemple : Boucle imbriquée pour afficher une matrice
matrice = [[1, 2, 3], [4, 5, 6], [7, 8, 9]]
for ligne in matrice:
for element in ligne:
print(element, end=" ")
print() # Sauter à la ligne après chaque ligne
5. Choisir entre for
et while
- Utilisez
for
lorsque vous connaissez à l'avance le nombre d'itérations, ou que vous souhaitez parcourir une séquence d'éléments comme une liste ou une chaîne. - Utilisez
while
lorsque vous ne savez pas combien de fois vous devrez répéter le bloc de code, et que la boucle doit se poursuivre jusqu’à ce qu’une condition devienne fausse.
Conclusion
Les boucles for
et while
en Python vous permettent d’automatiser des tâches répétitives et de parcourir des collections efficacement. La compréhension de ces structures est cruciale pour écrire du code optimisé et élégant. En fonction de vos besoins, vous pouvez choisir l'une ou l'autre, ou même les combiner avec des instructions comme break
et continue
pour un meilleur contrôle du flux.