FRFAM.COM >> Famille >> Technologie &Innovation >> Informatique

Maîtriser les boucles for en Python : Guide complet avec exemples pratiques

Comme dans tout langage de programmation, les boucles en Python permettent d'éviter la répétition de code. Contrairement à la boucle while, la boucle for offre un contrôle précis sur chaque élément d'une séquence, rendant son utilisation idéale pour les itérations structurées.

Que vous soyez débutant ou expérimenté en Python, maîtriser les boucles for est essentiel pour manipuler efficacement les listes et tableaux. Ce guide détaillé explique leur fonctionnement et propose des exemples concrets pour résoudre des problèmes courants de programmation.

Comment fonctionnent les boucles for en Python

La boucle for parcourt les éléments d'une séquence comme une liste, une chaîne, un tuple, un dictionnaire ou un ensemble. Elle utilise le mot-clé in pour itérer.

Similaire à la boucle for en Java malgré des différences syntaxiques, sa forme générale en Python est :

for variable in séquence :
    # Instructions à exécuter

Plus puissante que while, elle assure un flux contrôlé et prévisible.

Imaginez parcourir une classe d'élèves : pour chaque élève, effectuez une action spécifique. Sans élèves, la boucle s'arrête simplement.

Comment utiliser les boucles for en Python : exemples pratiques

Voici des exemples concrets.

Afficher les éléments d'une liste :

items = ["chaussure", "sac", "chemises", "lampe"]
for i in items:
    print(i)

Filtrer les éléments contenant 'a' :

items = ["chaussure", "sac", "chemises", "lampe"]
for i in items:
    if "a" in i:
        print(i)

Avec clause else :

b = [2, 3, 5, 6]
for i in b:
    print(i)
else:
    print("La boucle est terminée")

Utiliser break :

b = [2, 3, 5, 6]
for i in b:
    if i > 3:
        break
    print(i)

Utiliser continue :

b = [2, 3, 5, 6]
for i in b:
    if i > 3:
        continue
    print(i)

Boucles for avec listes et chaînes en Python

Afficher les entiers de 1 à 100 :

for x in range(1, 101):
    print(x)

Nombres impairs :

for x in range(1, 101):
    if x % 2 == 1:
        print(x)

Table de multiplication par 2 des impairs :

for x in range(1, 101):
    if x % 2 == 1:
        print(x, "x", 2, "=", x * 2)

Itérer sur une chaîne :

a = "Comment utiliser une boucle for en Python"
for i in a:
    print(i)

Compter les caractères (via count('')) :

a = ["Comment utiliser une boucle for en Python"]
for i in a:
    print(i.count(''))  # Résultat : 38

Version avec compréhension de liste :

a = ["Comment utiliser une boucle for en Python"]
c = [i.count('') for i in a]
print(c)  # [38]

Note : str.count('') équivaut à len(str).

Compteur de mots :

a = ["Comment utiliser une boucle for en Python"]
for i in a:
    print(i.count(' ') + 1)  # Résultat : 8

Avec compréhension :

a = ["Comment utiliser une boucle for en Python"]
c = [i.count(' ') + 1 for i in a]
print(c)  # [8]

Boucles for avec tableaux (listes de dictionnaires)

Exemple : identifier les moutons malades.

array = [
    {"name": "Sheep1", "healthy": "Oui"},
    {"name": "Sheep3", "healthy": "Non"},
    {"name": "Sheep4", "healthy": "Oui"},
    {"name": "Sheep5", "healthy": "Oui"},
    {"name": "Sheep8", "healthy": "Non"},
    {"name": "Sheep7", "healthy": "Non"},
    {"name": "Sheep9", "healthy": "Non"}
]
for sheep in array:
    if sheep["healthy"] == "Non":
        print("Quarantaine", sheep["name"])

Boucles for imbriquées en Python

Pour parcourir une liste imbriquée :

nested_list = [[1, 2, 4, 5], {"name": "Python", "method": "write"}]
for item in nested_list:
    for i in item:
        print(i)

Une bonne connaissance des listes et dictionnaires facilite les boucles imbriquées.

Boucles for ou while : laquelle choisir ?

Les boucles for et while ont chacune leur utilité selon le contexte. Les for excellent pour les itérations finies, tandis que while convient aux conditions dynamiques. Maîtrisez-les toutes deux pour une programmation Python efficace.

[]