Python 入门之 闭包

Python 入门之 闭包

1、闭包

(1)在嵌套函数内使用(非本层变量)和非全局变量就是闭包

(2)_ closure _ 判断是不是闭包

def func():
    a = 1
    def foo():
        print(a)
    print(foo.__closure__)  # 判断是不是闭包
func()
def wrapper():
    a = 1
    def inner():
        print(a)
    return inner
ret = wrapper()

a = 2
def wrapper():
    def inner():
        print(a)
    return inner
ret = wrapper()

def wrapper(a,b):
    def inner():
        print(a)
        print(b)
    inner()
    print(inner.__closure__)
a = 1
b = 2
wrapper(11,22)

(3)闭包的作用:

<1> 保存局部信息不被销毁,保护数据的安全性

<2> 在装饰器中使用

(4)闭包的应用:

<1> 可以保存一些非全局变量但是不易被销毁、改变的数据。

<2>在 装饰器中

猜你喜欢

转载自www.cnblogs.com/caiyongliang/p/11445058.html