在许多编程语言(例如,C、C++、PHP、Perl、Pascal、Basic)中都有一个无条件跳转运算符 - goto
。Python 没有它,因为它被(正确地)认为会破坏代码的逻辑。
我有一个问题:是否可以在Python中模拟这个运算符?建议这样做,以便命令将执行直接转换为指定的行号/标签,即,使其与其他语言中的原始命令完全相同。
我的尝试没有成功。我尝试使用它exec
,但完全困惑了。
PS这个问题是在将汇编代码翻译成 Python 时出现的。有时,汇编程序的编写水平非常高,以至于在物理上无法理解它们。如果你试图通过将其分解为一些函数或块来进行翻译,那么存在中断程序运行的很大风险。我必须逐字重写。
PPS我不知道是否有必要说模拟器应该尽快运行,因为程序是汇编程序,并且是为快速执行而设计的。
不完全是你想要的,但视觉上我使用 Python 类做了类似的事情:
结论:
也就是说,当找到所需的标签时,执行该标签之后的所有代码块,直到循环停止。