如果一个函数的内部函数对该函数的局部变量进行引用,那么该内部函数就称之为闭包。
如,我们定义如下函数:
def func_out(x1):
a=x1
def func_in(x2):
return a*x2
return func_in
该函数返回的同样是一个可执行函数,我们可以如此使用它:
fun1=func_out(2)
fun1(2)
4
fun1(4)
8
是不是似曾相识,对,它在表现上不仅和偏函数类似,而且和类的使用也非常相似,先是“类的实例化”,然后再“执行该实例”,
偏函数应用,类,闭包似有异曲同工之妙。