Python(60)_闭包

1 、闭包的概念

#-*-coding:utf-8-*-
'''
 1、闭包:内部函数调用外部函数的变量
'''
def outer():
    a = 1
    def inner():
        print(a)
    print(inner.__closure__)
outer()
print(outer.__closure__)


2    闭包的使用

#-*-coding:utf-8-*-
'''
 1、闭包:内部函数调用外部函数的变量
2、延长了生命周期
''' def outer(): a = 1 def inner(): print(a) return inner inn = outer() inn() # 这样就可以在函数外外面使用内部函数,这就是闭包的最常见的用法

3   闭包的使用

#-*-coding:utf-8-*-
'''
 1、闭包:内部函数调用外部函数的变量
 2、闭包的使用,节省时间,不用重新定义,节省内存空间
 3、爬虫的使用
'''
from urllib.request import urlopen
def get_url():
    url = 'http://www.baidu.com/'
    def get():
        ret = urlopen(url).read() # 获取网页的源码,分析数据
        print(ret)
    return  get
get_func = get_url()
get_func()

原文地址:https://www.cnblogs.com/sunnybowen/p/10250300.html