Si vous avez utilisé des tableaux dans d'autres langages de programmation, vous pouvez trouver quelque chose de similaire sous la forme de listes en Python. La seule différence est que les listes Python présentent un avantage supplémentaire: la taille dynamique. Comme les tableaux, vous pouvez les utiliser pour stocker plusieurs éléments.
Pourquoi le bouclage est-il nécessaire?
Lorsque vous travaillez avec des listes, vous devrez parfois effectuer la même opération sur chaque entrée de la liste.
Par exemple, vous souhaiterez peut-être prendre la moyenne de toutes les entrées d'une liste. Dans le même ordre d'idées, que se passe-t-il si vous avez stocké des blogs dans une liste et que vous souhaitez récupérer leur titre?
Tous ces scénarios ont le même problème: ils impliquent une répétition. Pour résoudre ces problèmes, vous pouvez simplement utiliser des boucles avec des listes en Python.
Voyons comment les boucles facilitent l'exécution d'opérations sur plusieurs éléments d'une liste avec un exemple.
Comprendre les boucles avec des listes à travers un exemple
Supposons que vous souhaitiez imprimer une liste des nageurs américains de l'année de 2016 à 2019 (personne n'a été récompensé en 2020 en raison du COVID-19). Sans boucles, vous devrez récupérer chaque nom un par un dans la liste. Cependant, cette méthode pose deux problèmes majeurs:
- L'impression de chaque nom est répétitive et prend du temps lorsque vous travaillez avec une longue liste.
- La modification du code pour chaque instance nécessite un effort considérable.
En rapport: Comment utiliser une boucle While en Python
Heureusement, une boucle for peut résoudre ces deux problèmes de manière efficace. Considérez le code suivant:
nageurs = [«phelps», 'dressel', «kalisz», 'dressel']
pour nageur dans nageurs:
imprimer (nageur)
Décortiquons ce code en trois étapes:
- Vous définissez une liste nageurs et y stocker les noms des gagnants.
- Vous définissez une boucle for, tirez un nom de la liste nageurs un par un et affectez-le à la variable nageur.
- Vous demandez à Python d'imprimer un nom attribué à nageur dans cette itération spécifique.
Maintenant, Python continue de réitérer le 2nd et 3rd étapes pour imprimer tous les nageurs de votre liste. Pour votre commodité, vous pouvez le lire comme ceci: "Pour chaque nageur de ma liste de nageurs, affichez le nom du nageur." Voici le résultat:
Un bref aperçu des boucles
Le sujet de la boucle est crucial car il s'agit de l'une des principales approches pour automatiser les tâches répétitives. Par exemple, dans notre nageurs.py fichier, Python traite la première ligne de la boucle:
pour nageur dans nageurs:
Ici, vous dites à Python de récupérer la première valeur de votre liste, nageurs. Ensuite, il l'assigne à votre variable définie nageur. La première valeur étant «phelps», l’instruction suivante s’applique à celle-ci:
imprimer (nageur)
Il est important de comprendre que Python imprime la valeur la plus récente de nageur à ce stade, qui se trouve être des «phelps». Comme la liste se compose de plusieurs valeurs, Python revient à la première ligne de la boucle:
pour nageur dans nageurs:
Cette fois, Python récupérera le nom suivant de votre liste, «dressel» et l’assignera à la variable nageur. Encore une fois, Python exécutera le morceau de code suivant:
imprimer (nageur)
Désormais, Python imprime la valeur la plus récente de nageur, qui se trouve être «dressel». De même, Python réitérera la boucle et affichera «kalisz» et «dressel».
Après avoir imprimé la dernière valeur, Python va à nouveau à la première ligne de la boucle, et comme il n'y a plus d'entrée, il passera à la ligne suivante. Dans ce programme, il n'y a rien après la boucle for, donc ça se termine.
Au fur et à mesure que vous continuez à parcourir les listes, gardez à l'esprit que quelle que soit l'étape que vous définissez dans votre code, elle sera réitérée une fois pour chaque entrée de liste, quelle que soit la longueur de la liste. Cela signifie que même si vous ajoutez un milliard d'entrées à votre liste, Python exécutera l'action définie un milliard de fois.
Une autre chose à noter est que lorsque vous définissez vos boucles for, vous pouvez choisir n'importe quel nom pour la variable temporaire affectée à chaque entrée de la liste. Cependant, il est recommandé de choisir un nom qui correspond à votre contexte pour une meilleure lisibilité du code.
Par exemple, voici une approche efficace pour parcourir une liste de produits, d'oiseaux et d'acteurs:
pour le produit dans les produits:
pour oiseau chez les oiseaux:
pour acteur en acteurs:
Maintenant que vous avez une compréhension de base de la boucle for, vous manipulez chaque élément de votre liste. Pour en revenir à l'exemple du nageur, vous pouvez féliciter chaque nageur pour ses compétences en écrivant le code suivant:
nageurs = ['phelps', 'dressel', 'kalisz', 'dressel']
pour nageur chez les nageurs:
print (f "{swimmer.title ()}, vos compétences en natation sont formidables!")
Ce code fonctionne exactement comme le précédent; la seule différence est que vous créez un message pour chaque nageur en appelant leurs noms. Comme auparavant, la boucle exécute à nouveau chaque nageur et imprime une déclaration pour chacun d'eux. Comme prévu, la sortie générée est affichée ci-dessous:
Vous pouvez également écrire plusieurs instructions dans la boucle for. Gardez à l'esprit que la boucle englobe toutes les lignes en retrait qui suivent nageur chez les nageurs, et Python exécute chaque ligne une fois pour chaque valeur de liste. Par conséquent, il existe des possibilités infinies pour toutes les entrées de la liste.
Par exemple, vous pouvez écrire une autre instruction d'impression dans l'exemple ci-dessus.
nageurs = ['phelps', 'dressel', 'kalisz', 'dressel']
pour nageur chez les nageurs:
print (f "{swimmer.title ()}, vos compétences en natation sont formidables!")
print (f "Au plaisir de voir votre dans la prochaine compétition, {swimmer.title ()}.
")
Comme vous avez utilisé l'indentation pour les deux instructions, Python exécute chacune d'elles pour chaque entrée de la liste.
Après avoir terminé la boucle, vous pouvez résumer votre sortie, puis passer à d'autres parties de votre programme. Cette partie post-boucle ne doit pas être indentée, elle n'est donc pas répétée.
Vous pouvez désormais parcourir facilement les listes
Dans cet article, vous avez appris pourquoi des boucles sont nécessaires, comment utiliser des boucles avec des listes et comment Python traite les entrées d'une liste lorsqu'elle est indentée dans une boucle. Vous pouvez désormais utiliser des listes et des boucles pour écrire du code plus complexe et créer des programmes de meilleure qualité.
Pour tester vos connaissances, voici un exercice simple: créez une liste de 10 nombres et n'imprimez que les nombres divisibles par cinq.
Travailler avec des listes en Python? Voici ce que vous devez savoir sur l'utilisation de la fonction d'ajout de Python lorsque vous travaillez avec des listes.
Lire la suite
- Programmation
- Python
Abonnez-vous à notre newsletter
Rejoignez notre newsletter pour des conseils techniques, des critiques, des ebooks gratuits et des offres exclusives!
Un pas de plus…!
Veuillez confirmer votre adresse e-mail dans l'e-mail que nous venons de vous envoyer.