Si une instruction goto existe en Python
-
Utiliser des exceptions pour émuler une instruction
goto
en Python -
Utilisez des boucles avec les instructions
break
etcontinue
pour émuler une instructiongoto
en Python
Cet article vous donne la réponse si l’instruction goto
existe ou non en Python.
Fondamentalement, les instructions goto
ne sont pas prises en charge en Python. Généralement, ces déclarations sont largement méprisées car elles donnent lieu à un code très désorganisé ; ainsi, se retrouvant dans le code spaghetti. Un tel code devient difficile à comprendre et à retracer tout en essayant de comprendre les flux et le débogage.
Python permet une programmation structurée en utilisant plusieurs manières de brancher le code, telles que l’utilisation d’expressions if-else
, d’exceptions et de boucles.
Si vous souhaitez émuler une instruction goto
en Python, cet article fournit quelques exemples. Cependant, ces méthodes ne sont pas recommandées car c’est une mauvaise pratique de programmation d’utiliser goto
.
Utiliser des exceptions pour émuler une instruction goto
en Python
Vous pouvez utiliser des exceptions pour fournir une manière structurée d’implémenter goto
, même si ce n’est pas une pratique de programmation recommandée. Après tout, les exceptions peuvent sortir de structures de contrôle profondément imbriquées. Vérifiez cet exemple ci-dessous.
class gotolabel(Exception):
print("from the goto label") # declare a label
try:
x = 4
if x > 0:
raise gotolabel() # goto the label named "gotolabel"
except gotolabel: # where to goto the label named "gotolabel"
pass
Production:
from the goto label
Utilisez des boucles avec les instructions break
et continue
pour émuler une instruction goto
en Python
Vous pouvez utiliser des boucles avec les instructions break
et continue
pour émuler une instruction goto
en Python. Cet exemple de programme illustre cette méthode.
prompt = "Roll the dice "
while True:
try:
y = int(input(prompt))
except ValueError:
print("Please enter a valid number")
continue
if y > 6:
prompt = "The dice has numbers 1-6 ! Input a number <6"
elif y < 1:
prompt = "The dice has numbers 1-6 ! Input a number >1"
else:
print("Correct!")
break
Production:
Roll the dice hj
Please enter a valid number
Roll the dice 6
Correct!
Ici, l’instruction continue
aide le processus à passer à l’itération suivante de la boucle et à provoquer une boucle infinie. D’autre part, l’instruction break
permet de terminer la boucle.