闭包函数返回ff2()

来源:11-13 闭包的经典误区

qq_星星_77

2023-03-23

def ff():
a3=10
def ff2():
#a3=8
#return a3
c=a3*3
return ff2() 老师这里为啥不是返回ff2(),而是 ff2变量呢
ff()
print(ff.closure)

因为可以定义f=f1() 那么就是说 f1()是变量咯

另一个问题:
闭包含义:
如果函数引用了外部的变量,就是闭包?
引用意义:
如果引用外部变量,而不是自己的变量,这种有什么意义呢? 一般不是模块自己的变量返回会别人调用吗?
引用的作用域
java中类变量是可以被成员变量访问调用的,而python中 外层函数变量被内层函数变量引用,称为闭包? 是可以随意引用嘛,那如果是嵌套呢

写回答

1回答

7七月

2023-03-24

如果加了括号,那就是函数的执行,而不是返回函数了。

闭包是函数内部定义了另外的函数,且内部函数引用了外部变量。

闭包是一种高级用法,可以用于简化代码,这个其实干讲,可能不太能够理解,但建议搜索下闭包用法,就能够很好的理解了。

0
0

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

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

14446 学习 · 4438 问题

查看课程