#我们在函数lazy_sum中又定义了函数f1,并且,内部函数f1可以引用外部函数lazy_sum的参数和局部变量,当lazy_sum返回函数f1时,相关参数和变量都保存在返回的函数中,这种称为“闭包(Closure)” def lazy_f1(*args): def f1(): sum = 0 for num in args: sum = sum + num return sum return f1 f2 = lazy_f1(1,2,3)#调用lazy_sum()时,每次调用都会返回一个新的函数 f3 = lazy_f1(1,2,3)#f1()和f2()的调用结果互不影响 print(f2 == f3)#False print(f2())#6
Python基础(返回函数)
猜你喜欢
转载自www.cnblogs.com/xingxingclassroom/p/10876718.html
今日推荐
周排行