闭包,赋值前引用的变量

时间:2014-08-13 17:44:09

标签: python closures

def f():                                                                        
    a = 0                                                                       
    def g():                                                                    
        a = a + 1                                                               
        return a                                                                
    return g                                                                    

s = f()                                                                         
print s()     

当我运行此代码时,我得到:

UnboundLocalError: local variable 'a' referenced before assignment

无法弄清楚原因。 非常感谢。

0 个答案:

没有答案