Python >> Tutoriel Python >  >> Python Tag >> exec()

Comment arrêter l'exécution dans la commande exec en Python 3 ?

Tiens, fais quelque chose comme ça :

class ExecInterrupt(Exception):
    pass

def Exec(source, globals=None, locals=None):
    try:
        exec(source, globals, locals)
    except ExecInterrupt:
        pass

Exec("""
print("foo")

if True: 
    raise ExecInterrupt

print("bar")
""")
print('This should still be executed')

Si votre souci est la lisibilité, les fonctions sont votre première ligne de défense.