2个def形成的函数才叫闭包吗

来源:11-11 什么是闭包

慕瓜1512093

2017-11-30

单单一个def内并不叫闭包吗,比较困惑

    如果是闭包的话,那和普通的def函数又有什么区别

    如果不是的话,那def下再再开个形成3个def的函数算闭包吗

=================上方作废=============

看11-13看了一半想起来的问题

后面解答了好吧。。。不用回答了。。

写回答

1回答

baby猫

2017-12-12

一个函数内部定义了内嵌函数和环境变量,并且return 返回的是内嵌函数名;在内嵌函数中需要引用环境变量,还要有return 语句,这样的结构才叫闭包。

如:

def func1():

    var                            #环境变量    

    def func2():               #内嵌函数

        pass

        return  value

    return func2()            # return返回内嵌函数名

1
1
慕瓜1512093
非常感谢!
2017-12-13
共1条回复

Python3.8系统入门+进阶 (程序员必备第二语言)

语法精讲/配套练习+思考题/原生爬虫实战

14446 学习 · 4438 问题

查看课程