匿名用户
1级
2013-07-30 回答
goto语句也称为无条件转移语句,其一般格式如下: goto 语句标号; 其中语句标号是按标识符规定书写的符号, 放在某一语句行的前面,标号后加冒号(:)。语句标号起标识语句的作用,与goto 语句配合使用。
用法是:
1. from goto import *。注意暂时不支持import goto,不是不能实现,是暂时没时间写。
2.对需要使用goto的函数,前面加个@patch
3.用label(x)和goto(x)的形式写label和goto。x可以是数字或字符串。
goto模块的代码如下:
import dis,pdb
#dummy functions serving as target of bytecode patching
def goto(label):
pass
def label(label):
pass
#
def decode_bytecode(fun):
"""Input: a function
Ouput: a list of pairs (opcode, arguments)"""
c = fun.func_code.co_code
n = len(c)
i = 0
while i
op = c[i]
i += 1
arguments = ""
if ord(op) >=