Etant donné le code suivant (qui ne fonctionne pas) :
while True:
# Snip: print out current state
while True:
ok = get_input("Is this ok? (y/n)")
if ok.lower() == "y": break 2 # This doesn't work :(
if ok.lower() == "n": break
# Do more processing with menus and stuff
Existe-t-il un moyen de faire fonctionner ce système ? Ou dois-je faire une vérification pour sortir de la boucle d'entrée, puis une autre vérification, plus limitée, dans la boucle extérieure pour sortir de l'ensemble si l'utilisateur est satisfait ?
161 votes
Pourquoi Python ne propose-t-il pas simplement "break(n)", où n est le nombre de niveaux que l'on veut quitter.
9 votes
Le C++ est bien ici avec
goto
si vous êtes niché au cœur d'un grand nombre de boucles0 votes
@Nathan See Pourquoi python ne permet pas nativement un mot clé comme goto pour sortir de n boucles une très belle explication de la part de nathan
0 votes
Oui, c'est bien.
0 votes
Ned Batchelder présente un exposé intéressant qui aborde les questions suivantes "Comment sortir de deux boucles ?" . Alerte au spoiler : faites la double boucle en simple.