Python3.x基础学习-闭包函数
闭包函数
在python中创建一个闭包一般有3个要求
1.闭包函数必须有内嵌函数
2.内嵌函数必须要引用外层函数的变量
3.外部函数返回内嵌函数的地址(函数名称)
判断是否为闭包函数 __closure__
def outter(num):
def inner():
print(num)
print(inner.__closure__) # (<cell at 0x00000218387798E8: int object at 0x0000000056298190>,)
return inner()
outter(10)
# (<cell at 0x00000205E3ADA8E8: int object at 0x000000006BEB8190>,)
# 10
num = 10
def outter():
def inner():
print(num)
print(inner.__closure__)
return inner
outter()
# None