Les instructions break, continue et pass en Python.
- 2021-11-23
- Publié par : Christophe DELEUZE
- Catégorie : Python
Cet article a pour objet de répondre à la question : comment utiliser les instructions break, continue, et pass lorsque vous travaillez avec des boucles en Python ?
L’utilisation des boucles for et 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 le fonctionnement de votre programme. Lorsque cela se produit, vous pouvez souhaiter que votre programme quitte complètement une boucle, saute une partie d’une boucle avant de continuer ou ignore ce facteur externe. Vous pouvez effectuer ces actions avec les instructions break, continue, et pass.
L'instruction break
En Python, l’instruction 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 sous votre instruction de boucle, généralement après une instruction conditionnelle if.
Info : pour suivre l’exemple de code de ce didacticiel, ouvrez un shell interactif Python sur votre système local en exécutant la commande Python. Vous pouvez ensuite copier, coller ou modifier les exemples en les ajoutant après les >>> de l’invite.
Regardons un exemple qui utilise l’instruction break dans une boucle for :
nombre = 0
for nombre in range(10):
if nombre == 5:
break # break ici
print(f'Le Nombre est {nombre}')
print('En dehors de la boucle')
Dans ce petit programme, la variable nombre est initialisée à 0. Ensuite, une instruction for construit la boucle tant que la variable nombre est inférieure à 10.
Au sein de la boucle for, il y a une déclaration if qui présente la condition que si la variable nombre est équivalente à l’entier 5, la boucle s’interrompra alors grâce à l’instruction break.
Dans la boucle se trouve également une instruction print() qui s’exécutera à chaque itération de la boucle for. Elle se situe après l’instruction break et nous permettra d’illustrer le comportement de l’exemple.
Pour savoir quand nous sommes hors de la boucle, nous avons inclus une instruction print() finale en dehors de la boucle for.
Lorsque nous exécutons ce code, nous obtenons la sortie suivante :
Le Nombre est 0
Le Nombre est 1
Le Nombre est 2
Le Nombre est 3
Le Nombre est 4
En dehors de la boucle
Cela montre qu’une fois que l’entier nombre est évalué comme équivalent à 5, la boucle se rompt, car le programme est invité à le faire avec l’instruction break.
l’instruction break fait sortir un programme d’une boucle. Dans le cas où vous n’avez plus besoin d’itérer sur les éléments restant, sortir de la boucle à l’aide de break vous permettra d’optimiser votre programme en vous faisant gagner du temps, car la boucle n’aura pas à parcourir les éléments restants.
L'instruction continue
L’instruction continue vous donne la possibilité de sauter l’exécution d’une partie du code d’une boucle quand une condition externe est déclenchée, puis de passer à l’itération suivante pour terminer le reste de la boucle. C’est-à-dire que l’itération actuelle de la boucle sera interrompue et le programme reviendra au sommet de la boucle pour passer à l’itération suivante.
L’instruction continue sera dans le bloc de code sous l’instruction de boucle, généralement après une instruction conditionnelle if.
En utilisant la même boucle for que dans la section précédente, nous utiliserons une instruction continue plutôt qu’une instruction break :
nombre = 0
for nombre in range(10):
if nombre == 5:
continue # continue ici
print(f'Le Nombre est {nombre}')
print('En dehors de la boucle')
La différence entre l’utilisation de l’instruction continue plutôt qu’une instruction break est que notre code continuera malgré la perturbation lorsque la variable nombre est évaluée comme équivalente à 5. Passons en revue notre sortie :
Le Nombre est 0
Le Nombre est 1
Le Nombre est 2
Le Nombre est 3
Le Nombre est 4
Le Nombre est 6
Le Nombre est 7
Le Nombre est 8
Le Nombre est 9
En dehors de la boucle
Vous remarquerez ici que le nombre 5 n’apparaît pas dans la sortie, mais que la boucle a quand même continué après ce point en affichant 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 fréquents que vous voudriez rejeter.
L’instruction continue fait qu’un programme ignore certains facteurs qui apparaissent dans une boucle, mais continue ensuite à travers le reste de la boucle.
L'instruction pass
Lorsqu’une condition externe est déclenchée, l’instruction pass vous permet de gérer la condition sans que la boucle soit affectée de quelque manière que ce soit ; tout le code continuera à être lu à moins qu’une break ou une autre instruction ne se produise.
Comme pour les autres instructions, l’instruction pass sera dans le bloc de code sous l’instruction de boucle, généralement après une instruction conditionnelle if.
En utilisant toujours le même bloc de code, remplaçons l’instruction break ou continue par une instruction pass :
nombre = 0
for nombre in range(10):
if nombre == 5:
pass # pass ici
print(f'Le Nombre est {nombre}')
print('En dehors de la boucle')
L’instruction pass qui se produit après l’instruction if conditionnelle indique au programme de continuer à exécuter la boucle et d’ignorer le fait que la variable nombre est réévaluée comme équivalente à 5 au cours de l’une de ses itérations.
Nous allons exécuter le programme et considérer le résultat :
Le Nombre est 0
Le Nombre est 1
Le Nombre est 2
Le Nombre est 3
Le Nombre est 4
Le Nombre est 5
Le Nombre est 6
Le Nombre est 7
Le Nombre est 8
Le Nombre est 9
En dehors de la boucle
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 agir comme un espace réservé lorsque vous travaillez sur un nouveau code et réfléchissez à un niveau algorithmique avant de définir des détails.
Le mot de la fin
Il n’y a pas grand-chose à rajouter à part que les instructions break, continue et pass vous permettront d’utiliser des boucles for et des boucles while plus efficacement dans votre code.
5 idées d’exercices pour pratiquer
- Parcourir l’alphabet à l’aide d’une boucle et sortir de celle-ci à l’aide de
breakquand la lettre traitée sera celle correspondant à l’initiale de votre prénom ; - En reprenant le bloc de code utiliser dans cet article, parcourir tous les ages jusqu’à 150 ans et ignorer uniquement votre âge à vous (utiliser
continue) ; - Utiliser
pass- Créer une fonction vide et l’appeler (une erreur doit apparaître) ;
- Créer une fonction vide contenant uniquement
passet l’appeler ;
- Écrire une boucle
whilequi incrémente une variableiet affiche sa valeur avecprint(). Sii>1000, on sort de la boucle avec l’instructionbreak. Siiest impair, on passe directement à l’itération suivante sans afficher la valeur deià l’aide decontinue.
Merci pour le rappel. Ça va sérieusement m’aider.
merci beaucoup vos explication son vraiment claire.