Python的闭包

def func():
    n = []
    def func2():
        n.append(len(n))
        print(‘fnuc2:%d‘%len(n))
    return func2

f = func()
f()
f()
f()
以上的代码运行结果为:
fnuc2:1
fnuc2:2
fnuc2:3
闭包可以让一个外层函数中的变量在函数调用结束后依然存在,也是装饰器的基础

相关推荐