闭包函数

Posted xufengnian

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了闭包函数相关的知识,希望对你有一定的参考价值。

1.什么是闭包函数

  闭:指的是闭包函数时定义在一个函数的内部函数

  包:该内部函数包含对外层函数作用域名字的引用

 

  需要结合函数对象的概念将闭包函数返回到全局作用域取使用,从而打破函数的层级限制

def outter():
    x = 111
    def inner():
        print(x)
    return inner

2.为什么要用闭包函数

  闭包函数提供了一种为函数体传值的解决方案

3.如何使用闭包函数

为函数体传值

def outter(x,y):
    def func():
        print(x+y)
    return func
f=outter(1,2)
f()

遇到一个要传值的函数,经常要传一个固定的值,这时就可以使用闭包函数,比如经常要访问百度网址,想把网址当成变量,又不想写死,这时可以使用闭包函数。

import requests
def outter(url):
    def get():
        response=requests.get(url)
        if response.status_code == 200:
            print(len(response.text))
    return get

baidu=outter(https://www.baidu.com)
baidu()

 

以上是关于闭包函数的主要内容,如果未能解决你的问题,请参考以下文章

JS---闭包

javascript 匿名函数及闭包----转载

Groovy闭包 Closure ( 闭包参数绑定 | curry 函数 | rcurry 函数 | ncurry 函数 | 代码示例 )

Groovy闭包 Closure ( 闭包作为函数参数 | 代码示例 )

Groovy闭包 Closure ( 闭包作为函数参数 | 代码示例 )

JS闭包的概念