Boucles en Python : For et While

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.

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *