Boucle for Python pour traiter les éléments d’une liste

Une boucle for Python parcourt chaque élément d’un itérable, donc les recherches de “python for loop” signifient souvent « répéter ce travail pour chaque élément ». Utilisez-la quand vous devez appliquer la même règle à chaque élément d’une liste ou d’une séquence et recueillir des résultats, comme des totaux, des indicateurs ou une liste récapitulative propre. Elle rend le travail répétitif lisible sans indexation manuelle.

Exemple De Boucle For Python Pour Itérer Des Éléments

Sortie :

La sortie apparaîtra ici...

Sortie :

Terminé : expédier la commande
Terminé : envoyer un email au client

Comment Fonctionne Cet Exemple

La boucle avance élément par élément pour que vous puissiez appliquer les mêmes règles de façon cohérente.

  1. for task in tasks récupère chaque chaîne de la liste.
  2. La même action d’affichage s’exécute pour chaque élément.
  3. La sortie prouve que la boucle s’est exécutée une fois par tâche.

Erreurs Courantes

Erreur 1 : Penser que range inclut la valeur de fin.

# faux : attend 1 à 5
for day in range(1, 5):
    print(day)
# Vrai : Range S'Arrête Avant La Valeur De Fin
for day in range(1, 6):
    print(day)

Cela arrive parce que range est exclusif sur la borne supérieure, donc la valeur de fin n’est jamais produite. Pour en savoir plus, voir l’exemple Python range.

Erreur 2 : Modifier une liste pendant l’itération.

# Faux : supprimer des éléments déplace la liste et peut sauter des utilisateurs
for user in users:
    if user["inactive"]:
        users.remove(user)
# Vrai : construire une nouvelle liste à la place
active_users = []
for user in users:
    if not user["inactive"]:
        active_users.append(user)

Supprimer des éléments modifie la liste pendant que la boucle la parcourt, donc certains éléments ne sont jamais visités.

Erreur 3 : Mal interpréter for ... else.

# Faux : S'Attend À Ce Que Else S'Exécute Après Un Break
for item in items:
    if item["id"] == target_id:
        break
else:
    print("Élément introuvable")
# Vrai : Else Ne S'Exécute Que Si La Boucle Se Termine Sans Break
for item in items:
    if item["id"] == target_id:
        print("Élément trouvé")
        break
else:
    print("Élément introuvable")

Le bloc else ne s’exécute que lorsque la boucle se termine normalement, donc un break le saute.

for vs while : lequel utiliser

Utilisez for quand…Utilisez while quand…
Vous avez une liste, un range, un fichier ou tout itérable à traiter.Vous attendez qu’une condition change (réessais, sondage, saisie utilisateur).
Le nombre d’itérations est déterminé par les données.Le nombre d’itérations est inconnu à l’avance.
Vous voulez itérer proprement sur des éléments.Vous avez besoin d’un contrôle manuel sur l’arrêt.

Règle de base : utilisez for pour le travail « pour chaque élément » et while pour « jusqu’à ce que cette condition soit vraie ».

Considérations De Performance

Une boucle for est O(n) sur les éléments que vous lui donnez. range() est paresseux, donc itérer sur de grandes plages numériques n’alloue pas une liste gigantesque en mémoire. Si vous n’avez besoin que de la première correspondance, interrompez tôt ou utilisez next/any avec un générateur pour court-circuiter le scan et éviter du travail inutile.

Plus de schémas de boucle for en Python

Ajouter des étiquettes de position avec enumerate.

tasks = ["expédier la commande", "envoyer un email au client", "mettre à jour le CRM"]
for index, task in enumerate(tasks, start=1):
    print(f"{index}. {task}")

Utilisez enumerate quand vous avez besoin à la fois de l’élément et de sa position, sans compteur manuel. Associé : exemple Python enumerate.

Résumer des valeurs d’un dictionnaire avec .items().

region_sales = {"ouest": 1200, "centre": 950, "est": 1420}
for region, total in region_sales.items():
    print(f"{region} : ${total}")

Itérer sur .items() garde clés et valeurs ensemble, ce qui est idéal pour les rapports. Voir l’exemple Python dict pour les recherches clé/valeur.

Quand utiliser une boucle for Python

  • Vous devez appliquer la même règle à chaque commande, utilisateur ou ligne de fichier.
  • Vous voulez un parcours clair et lisible des éléments sans gérer d’index manuels.
  • Vous devez collecter des résultats (totaux, listes d’incidents) pendant l’itération.
  • Évitez-la quand vous n’avez besoin que d’une seule correspondance ; utilisez next, any ou all pour couper court.