一、定义闭包
嵌套函数,内部函数调用外部函数的变量,叫作闭包函数
# 嵌套函数,内部函数调用外部函数的变量 def outer(): a = 1 def inner(): print(a) inner() outer()
二、闭包的应用url
# 把内部函数返回,在外部调用避免重复的释放和建立变量a def outer(): a = 1 def inner(): print(a) return inner f = outer() f()
执行过程当中,a=1在外部变量建立一次后,因为内部引用的存在,一直未消失。spa
避免了a在运行过程当中,重复建立、重复释放code
三、闭包简单应用blog
from urllib.request import urlopen def get_url(): url = 'https://www.baidu.com/' def get(): ret = urlopen(url).read() print(ret) return get get_func = get_url() get_func()
屡次引用时,能够避免重复建立、释放urlget