闭包:㠌套函数,而且内部函数必需要调用外部函数的变量
def outer():
a=1
def inner():
print(a)
print(inner.__closure__)
outer()
闭包的常规用法:
def outer():
a=1
def inner():
print(a)
return inner()
inn=outer()
inn()
输出的__closure__有cell元素 :是闭包函数
案例:
from urllib.request import urlopen
def get_url():
url="http://www.baidu.com"
def inner():
content=urlopen(url).read()
print(content)
return inner
inn=get_url()
inn()