内部函数对外部函数作用域内变量的引用,则内部函数称为闭包。闭包的条件:
def funcOut(a):
def funcIn(b):
return a + b
return funcIn
f = funcOut(2) # 2
首先,运行代码,会发现f的返回值是一个 <class 'function'>.它返回的这个函数其实是funIn。注意:返回的不是funIn(),这俩者有本质的区别,前者可以看做一个变量,后者是函数的调用。所以,f指向了内嵌函数funcIn,因为funcIn是带有参数的,即当调用f的时候,必须带一个参数。
def funcOut(a):
def funcIn(b):
return a + b
return funcIn
f = funcOut(2) # 2
print(f(3)) # 5
最后的打印结果 可想而知是5。
本文地址:https://blog.csdn.net/LYL1150475496/article/details/107073175
如对本文有疑问, 点击进行留言回复!!
python+selenium自动化(七)__键盘、鼠标操作及下拉框
File “<frozen importlib._bootstrap>“, line 219, in _call_with_frames_removed ValueError: source cod
网友评论