Python3范围规则

时间:2018-06-07 17:56:02

标签: python-3.x

有人可以在下面的代码中给我一个简短的解释原因,取消注释param = "oops"导致UnboundLocalError: local variable 'param' referenced before assignment,而没有该赋值语句可以避免错误。在这两种情况下,nestedFun都是从封闭函数访问变量。

def fun(param):
    def nestedFun():
        if param is None:
            print("something")
        else:
            #param = "oops"
            print(param)
    nestedFun()

fun("test")

0 个答案:

没有答案