名称错误:未使用ex定义全局名称

2024-04-26 13:19:57 发布

您现在位置:Python中文网/ 问答频道 /正文

我有一个小密码

def MyFunc2(x):
    return x + 1
def MyFunc3(a):
    return MyFunc2(7)

res = str(MyFunc3(1))

它在独立模式下工作没有问题,但是如果我尝试在exec中使用它

^{pr2}$

出现错误“NameError:未定义全局名称'MyFunc2'” 这个代码有什么问题?在

有效代码

        code="""
def MyFunc3(a):
    def MyFunc2(x):
        return x + 1

    return MyFunc2(7)

res = str(MyFunc3(1))

"""

        exec (code)

Tags: 代码密码returndef错误模式coderes