高阶函数之返回函数 即闭包
举例说明:
我们在函数lazy_sum中又定义了函数sum,并且,内部函数sum可以引用外部函数lazy_sum的参数和局部变量,
当lazy_sum返回函数sum时,相关参数和变量都保存在返回的函数中,这种称为“闭包(Closure)”的程序结构拥有极大的威力。
在javascript中也经常被用到,很强大。
def lazy_sum(L):
def sum():
ax = 0
for s in L:
ax = ax + s
return ax
return sum
f = lazy_sum([1,2,3,4])
print(f()) # 调用f()方法时 才会执行
关注一波!喜欢一波!本人是前端菜鸟,正在做自己的个人博客邓鹏的博客,欢迎来交流学习, 使用的技术 vue + koa2 + mysql + php + nginx!