Oui, il n'y a pas d'instruction goto en Python. Voyons d’abord ce qu’est goto en langage C. Cependant, l'utilisation de goto est également déconseillée en C.
L'instruction goto dans la programmation C fournit un saut inconditionnel de "goto" à une instruction marquée dans la même fonction. Voici la syntaxe -
goto label; .. . label: statement;
Regardons maintenant le programme C de goto -
#include <stdio.h> int main () { int a = 10; LOOP:do { if( a == 15) { /* skip the iteration */ a = a + 1; goto LOOP; } printf("a = %d\n", a); a++; }while( a < 20 ); return 0; }
a = 10 a = 11 a = 12 a = 13 a = 14 a = 16 a = 17 a = 18 a = 19
Remarque - L'utilisation des instructions goto est également déconseillée en C.
En Python, il n'est pas nécessaire d'utiliser goto car nous pouvons accomplir la même tâche en utilisant les instructions if et ou, et, les expressions et boucles if-else (y compris continue et break) en utilisant les instructions while et for.
Utilisez les exceptions définies par l'utilisateur comme alternative -
class goto1(Exception): pass class goto2(Exception): pass class goto3(Exception): pass def loop(): print('start') num = input() try: if num<=0: raise goto1 elif num<=2: raise goto2 elif num<=4: raise goto3 elif num<=6: raise goto1 else: print('end') return 0 except goto1 as e: print('goto1') loop() except goto2 as e: print('goto2') loop() except goto3 as e: print('goto3') loop()
Utilisez les méthodes imbriquées comme autre option -
def demo(): print("In the demo() function") def inline(): print("In") inline() demo()
In In the demo() function
C'est un décorateur de fonctions utilisant goto en Python. Testé sur Python 2.6 à 3.6 et PyPy. Installez-le en utilisant pip -
Remarque : s'applique à Python 3.6
pip install goto-statement
Voyons un exemple −
# Python 3.6 from goto import with_goto @with_goto def range(start, stop): i = start result = [] label .begin if i == stop: goto .end result.append(i) i += 1 goto .begin label .end return result
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!