Python 3嵌套函数变量

时间:2015-12-05 20:44:02

标签: function python-3.x nested

def main_function():
    variable = blur.copy() #copy of a blurred image that is defined in main_function

    def sub_function():
            global res
            variable = a_library_function(variable, other parameters)
    sub_function()
main_function() 

当我尝试运行代码时,ıt返回“名称'变量'未定义”。没有main_function,它运行良好。我这样做是因为有很多子功能,我想立刻调用所有子功能。

1 个答案:

答案 0 :(得分:0)

在四个子函数中将variable定义为nonlocal

def sub_function():
    nonlocal variable