我有一个小代码
def MyFunc2(x):
return x + 1
def MyFunc3(a):
return MyFunc2(7)
res = str(MyFunc3(1))
它独立工作没有问题,但如果我试着用exec
code = """
def MyFunc2(x):
return x + 1
def MyFunc3(a):
return MyFunc2(7)
res = str(MyFunc3(1))
"""
exec code
我有错误" NameError:全局名称' MyFunc2'没有定义" 这段代码有什么问题?
工作代码
code="""
def MyFunc3(a):
def MyFunc2(x):
return x + 1
return MyFunc2(7)
res = str(MyFunc3(1))
"""
exec (code)