def funct():
x = 4
action = (lambda n: x ** n)
return action
x = funct()
print(x(2)) # prints 16
…我不太明白为什么2会自动分配给n?
解决方法:
n是funct返回的匿名函数的参数.一个完全相同的功能定义是
def funct():
x = 4
def action(n):
return x ** n
return action
这种形式是否更有意义?