Articles

Comment utiliser les instructions Break, Continue et Pass lors du travail avec des boucles en Python 3

Posted on

Introduction

L’utilisation de boucles for et de boucles while en Python vous permet d’automatiser et de répéter des tâches de manière efficace.

Mais parfois, un facteur externe peut influencer la façon dont votre programme s’exécute. Lorsque cela se produit, vous pouvez vouloir que votre programme sorte complètement d’une boucle, saute une partie d’une boucle avant de continuer, ou ignore ce facteur externe. Vous pouvez effectuer ces actions avec les instructions breakcontinue et pass.

Enoncé break

En Python, l’énoncé break vous offre la possibilité de sortir d’une boucle lorsqu’une condition externe est déclenchée. Vous placerez l’instruction break dans le bloc de code situé sous votre instruction de boucle, généralement après une instruction conditionnelle if.

Regardons un exemple qui utilise l’instruction break dans une boucle for:

number = 0for number in range(10): if number == 5: break # break here print('Number is ' + str(number))print('Out of loop')

Dans ce petit programme, la variable number est initialisée à 0. Puis une instruction for construit la boucle tant que la variable number est inférieure à 10.

A l’intérieur de la boucle for, il y a une instruction if qui présente la condition que si la variable number est équivalente à l’entier 5, alors la boucle s’interrompra.

A l’intérieur de la boucle se trouve également une instruction print() qui s’exécutera à chaque itération de la boucle for jusqu’à la rupture de la boucle, puisqu’elle se trouve après l’instruction break.

Pour savoir quand nous sommes sortis de la boucle, nous avons inclus une déclaration finale print() en dehors de la boucle for.

Lorsque nous exécutons ce code, notre sortie sera la suivante :

Output
Number is 0Number is 1Number is 2Number is 3Number is 4Out of loop

Ceci montre qu’une fois que l’entier number est évalué comme équivalent à 5, la boucle s’interrompt, car le programme reçoit l’ordre de le faire avec l’instruction break.

L’instruction break fait en sorte qu’un programme se sépare d’une boucle.

Introduction continue

L’instruction continue vous donne la possibilité de sauter la partie d’une boucle où une condition externe est déclenchée, mais de continuer pour terminer le reste de la boucle. Autrement dit, l’itération actuelle de la boucle sera interrompue, mais le programme reviendra au début de la boucle.

L’instruction continue se trouvera dans le bloc de code sous l’instruction de boucle, généralement après une instruction conditionnelle if.

En utilisant le même programme de boucle for que dans la section Déclaration de rupture ci-dessus, nous utiliserons une déclaration continue plutôt qu’une déclaration break :

number = 0for number in range(10): if number == 5: continue # continue here print('Number is ' + str(number))print('Out of loop')

La différence en utilisant l’instruction continue plutôt qu’une break est que notre code continuera malgré la perturbation lorsque la variable number est évaluée comme équivalente à 5. Regardons notre sortie :

Output
Number is 0Number is 1Number is 2Number is 3Number is 4Number is 6Number is 7Number is 8Number is 9Out of loop

Ici, Number is 5 n’apparaît jamais dans la sortie, mais la boucle continue après ce point pour imprimer des lignes pour les nombres 6-10 avant de quitter la boucle.

Vous pouvez utiliser l’instruction continue pour éviter un code conditionnel profondément imbriqué, ou pour optimiser une boucle en éliminant les cas qui se produisent fréquemment et que vous souhaitez rejeter.

L’instruction continue amène un programme à sauter certains facteurs qui se présentent dans une boucle, mais à poursuivre ensuite le reste de la boucle.

Etat de passage

Lorsqu’une condition externe est déclenchée, l’état pass permet de gérer la condition sans que la boucle soit impactée de quelque manière que ce soit ; tout le code continuera à être lu à moins qu’un break ou un autre état ne survienne.

Comme pour les autres instructions, l’instruction pass se trouvera dans le bloc de code sous l’instruction de la boucle, typiquement après une instruction conditionnelle if.

En utilisant le même bloc de code que ci-dessus, remplaçons l’instruction break ou continue par une instruction pass :

number = 0for number in range(10): if number == 5: pass # pass here print('Number is ' + str(number))print('Out of loop')

L’instruction pass intervenant après l’instruction conditionnelle if indique au programme de poursuivre l’exécution de la boucle et d’ignorer le fait que la variable number évalue comme équivalent à 5 lors d’une de ses itérations.

Nous allons exécuter le programme et considérer la sortie :

Output
Number is 0Number is 1Number is 2Number is 3Number is 4Number is 5Number is 6Number is 7Number is 8Number is 9Out of loop

En utilisant l’instruction pass dans ce programme, nous remarquons que le programme s’exécute exactement comme il le ferait s’il n’y avait pas d’instruction conditionnelle dans le programme. L’instruction pass indique au programme de ne pas tenir compte de cette condition et de continuer à exécuter le programme comme d’habitude.

L’instruction pass peut créer des classes minimales ou servir de substitut lorsqu’on travaille sur un nouveau code et qu’on pense à un niveau algorithmique avant de marteler les détails.

Conclusion

Les breakcontinue, et pass en Python vous permettront d’utiliser plus efficacement les boucles for et while dans votre code.

Pour travailler davantage avec les instructions break et pass, vous pouvez suivre notre tutoriel de projet  » Comment créer un Twitterbot avec Python 3 et la bibliothèque Tweepy. « 

Laisser un commentaire

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