闭包函数

什么是闭包

闭包指的是函数内部函数对外部作用域而非全局作用域的引用.

函数传参的两种方式

方式一(使用参数的形式)

def inner(x):
    print(x)

inner(1)
inner(1)
inner(1)

1

1

1

方式二(闭包函数)

def outter(x):
    x=1
    def inner():
        print(x)
    return inner
f=outter(1)
f()
f()
f()

1

1

1

闭包函数的应用

闭包的意义:闭包函数把函数变量一起包起来,下次调用时可以直接调用

应用领域:爬虫,延迟计算

import  requests
def outter(url):
    def get_res():
        res=requests.get(url)
        print(res.text)
    return get_res

baidu_spider=outter('https://www.baidu.com')
taobao_spider=outter('https://www.taobao.com')
baidu_spider()
原文地址:https://www.cnblogs.com/aden668/p/11340163.html