Boucles Python While
Introduction
Plusieurs fois en programmation, vous devrez répéter la même tâche plusieurs fois. En fait, la mise en boucle et la répétition d’une opération sont l’une des pierres angulaires de la programmation. Après tout, l’une des choses pour lesquelles les ordinateurs sont bien meilleurs que les humains est d’effectuer des tâches répétitives sans se fatiguer ou faire des erreurs.
L’une des façons les plus simples de faire répéter la même tâche à un programme est d’utiliser une boucle while. Une boucle while répète le même bloc de code alors qu’une condition est vraie. Lorsque cette condition devient fausse, la boucle s’interrompt et le flux régulier de code reprend.
La structure d’une boucle while est similaire à celle que vous avez rencontrée dans le dernier guide avec if. Une boucle while commence par le mot while suivi d’une parenthèse contenant la condition de la boucle et d’un deux-points. Les lignes suivantes sont indentées et s’exécuteront dans la boucle.
Infini pendant
Jetez un coup d’œil à cette boucle while. Essayez-le vous-même dans votre interprète pour voir exactement ce qu’il fait. Vous pourriez être quelque peu surpris.
Import time for sleep
import time
While loop
while(True):
print("looping...")
time.sleep(2)
Que s’est-il passé? Que se passe-t-il plutôt ? Si vous n’avez pas encore compris comment l’arrêter, appuyez simplement sur Ctrl+C. Une boucle while s’exécutera indéfiniment tant que la condition qui lui est donnée reste True. La boucle ci-dessus a reçu True comme condition, qui ne sera jamais pas vraie.
De temps en temps, vous devrez exécuter une boucle infinie. Ils sont utiles pour des choses comme la surveillance des données pour les modifications. Si c’est le cas, passer True est un moyen infaillible d’y parvenir.
Il y a une autre pièce de ce puzzle. sleep() est une méthode qui fait que Python fait une pause pendant un nombre spécifié de secondes. Donnez à sleep() le nombre de secondes pendant lesquelles vous voulez qu’il s’arrête entre parenthèses, et il bloquera l’exécution de votre programme. Il est assez courant de voir sleep() dans des boucles, en particulier des boucles infinies.
Compte à rebours
Une façon d’arrêter une boucle while consiste à utiliser une variable de comptage. Définissez la condition de la boucle sur le nombre où vous souhaitez que la boucle cesse d’itérer et incrémentez la variable de comptage à chaque exécution de la boucle.
count = 0
while(count < 10):
print("loop number: %d" % (count + 1))
count += 1
La variable count commence par zéro. La condition spécifiée pour la boucle indique qu’elle s’exécutera tant que count est inférieur à dix. Il ne fonctionnera pas tant que le compte est de dix. Notez cependant que la boucle s’exécute dix fois. C'est parce que la boucle s'exécute alors que count est égal à zéro. La sortie est capable de dire que la première exécution est le numéro un et la dernière est dix car la variable substituée à la chaîne est count + 1, de sorte qu’elle affiche un de plus que la valeur de count actuelle. Après print(), on en ajoute un pour compter.
Casser
Vous pouvez également interrompre une boucle while à partir de l’intérieur de la boucle à l’aide de break. Il fonctionne généralement mieux en conjonction avec si, et une circonstance spécifique qui provoquerait la rupture d’une boucle autrement sans fin.
Import Random for random number generator
import random
Infinite while loop with break condition
while(True):
num = random.randint(1, 10)
print(num)
if(num == 7):
print("Stopping...")
break
else:
print("Still looping...")
La boucle est configurée pour s’exécuter indéfiniment en passant True comme condition de la boucle. Cependant, il existe une condition dans laquelle la boucle peut se rompre. Si la variable num est égale à sept lors de l’une des itérations, le code arrivera à break et break la boucle.
Cet exemple n'est pas tout à fait réaliste. La bibliothèque aléatoire a été importée et un générateur de nombres aléatoires a été utilisé pour créer la valeur de num à chaque itération. Ce code particulier, random.randint(1, 10), est une méthode de la bibliothèque random qui choisit un nombre aléatoire entre un et dix. La plage peut être spécifiée en modifiant les numéros de début et de fin. Dans un scénario réel, ce serait probablement une entrée de l’utilisateur ou un signal provenant d’une autre partie du programme qui briserait la boucle. En fait, des boucles infinies comme celle-ci sont souvent utilisées pour écouter les entrées de l’utilisateur.
Conclusion
Alors que les boucles sont l’un des outils les plus importants pour répéter des opérations en Python. Ils peuvent être utilisés pour itérer un certain nombre de fois, jusqu’à ce qu’un signal ou une condition soit rempli, ou indéfiniment. Bien que leur structure soit très simple, il est important de garder une trace de ce qui se trouve dans la boucle et du moment exact où elle est censée se terminer. Il est très facile de laisser l’une de ces boucles s’éloigner de vous. Une boucle mal construite peut entraîner une utilisation excessive des ressources, un blocage et un flux de programme incorrect. Assurez-vous simplement de garder un œil sur le chemin emprunté par votre boucle.
Table des matières
- Guide d’introduction et d’installation de Python
- Les fichiers Python et l’interpréteur
- Expérimenter avec des nombres et du texte en Python
- Variables Python
- Travailler avec des variables numériques en Python
- Principes de base des chaînes Python
- Chaînes Python avancées
- Commentaires sur Python
- Listes Python
- Méthodes de liste Python
- Listes multidimensionnelles Python
- Tuples Python
- Opérateurs booléens Python
- Instructions Python If
- Boucles Python While
- Python pour les boucles
- Dictionnaires Python
- Dictionnaires avancés Python
- Fonctions Python