NameError:未使用exec

时间:2016-11-04 23:33:07

标签: python exec global

我有一个小代码

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)

0 个答案:

没有答案