执行程序或函数语句时,形式参数的当前值被保存(在堆栈上),并且在该语句的范围内,它们被绑定到调用中实际参数的值。退出该语句后,将恢复这些形式参数的原始值。该协议是完全递归的。如果在语句主体内进行某些操作,使形式参数再次绑定到新值,则lambda绑定方案保证这一切都将有序进行。
x仅有一个绑定:执行x = 5只会更改现有绑定中的值。这就是为什么默认参数用于直接将值分配给lambda参数的原因。
def function(x): a = lambda x=x: x x = 5 b = lambda: x return a,b aa, bb = function(2) aa() bb()
5
Python允许您使用称为lambda函数的功能来创建匿名函数,即没有名称的函数。lambda函数是小的函数,通常不超过一行。表达式的结果是将lambda应用于参数时的值。