diff --git a/src/cours/CIEL1/01-bases-python/cours/python-bases-2-structures-controle.md b/src/cours/CIEL1/01-bases-python/cours/python-bases-2-structures-controle.md index d1c670b..1683575 100644 --- a/src/cours/CIEL1/01-bases-python/cours/python-bases-2-structures-controle.md +++ b/src/cours/CIEL1/01-bases-python/cours/python-bases-2-structures-controle.md @@ -186,3 +186,37 @@ Notre variable `i` vaudra tour à tour toutes les valeurs de 0 à 10, grâce à Nous n'avons pas besoin de l'initialiser ni de l'incrémenter (=l'augmenter de 1), c'est la boucle `for` qui s'en charge, en passant à l'élément suivant de l'ensemble que nous donne `range` ``` +### Stopper une boucle + +Pour stopper une boucle, on peut utiliser l'instruction `break`. Cette instruction fonctionne avec les boucles `for` et les boucles `while`. + +```admonish example title="Exemple" +On souhaite sortir de la boucle lorsqu'on a trouvé un caractère espace dans la chaîne de caractères et afficher sa position. + +~~~python +i = 0 # On crée une variable pour compter +for char in "Hello, World!": # Pour tous les caractères dans la chaine "Hello, World!" + i = i+1 # On incrémente la variable de comptage + if char == " ": # On teste si le caractère est un espace + break # Si oui, on sort de la boucle +print(f"Il y a un espace en {i}eme position") +~~~ +Resultat : `Il y a un espace en 7eme position` +``` + +### Passer à l'itération suivante + +Pour forcer une boucle à passer à l'itération suivante, on peut utiliser l'instruction `continue`. Cette instruction fonctionne avec les boucles `for` et les boucles `while`. + +```admonish example title="Exemple" +On voudrait n'afficher que les consonnes et les caractères spéciaux d'une chaîne de caractères + +~~~python +for char in "Hello, World!": # Pour tous les caractères dans la chaine "Hello, World!" + if char in "aeiouy": # On teste si le caractère est une voyelle + continue # Si oui, on reboucle avant d'afficher + print(char, end="") # Si ce n'est pas une voyelle, on n'a pas utilisé continue, donc on affiche le caractère + # Le paramètre end de print ici sert à éviter de passer à la ligne à chaque print +~~~ +Résultat : `Hll, Wrld!` +``` \ No newline at end of file