我想得到内部函数结果,所以我把它编码为
def main():
def sub():
a = 1
print a
exec main.__code__.co_consts[1]
使用上面的代码成功运行,但我想将参数传递给sub
函数,如...
def main():
def sub(x):
a = x + 1
return a
ans = exec main.__code__.co_consts[1]
print ans
该问题是我不知道如何传递x
值。
exec
,以便在没有x
功能exec
值与main
一起传递
答案 0 :(得分:1)
可能类似下面的代码,如this SO answer
所示def main():
def sub():
a = x + 1
print a
return a
exec(main.__code__.co_consts[1], {'x': 1} )