【发布时间】:2015-08-04 03:46:01
【问题描述】:
当我在 python 中遇到闭包时,从下面的代码中,我不明白调用函数时为 x 和 y 分配的参数的值如何。在第 1 点中,我们为 x 传递参数值 5。然后将其分配给函数中的 x。在第 2 点中,我们将 7 传递给 inc5,我的疑问出现在这里,值 7 应该再次分配给 x,但它是如何分配给 y 的。
def makeInc(x):
def inc(y):
return y + x
return inc
inc5 = makeInc(5) #Point 1
inc5(7) #Point 2
【问题讨论】:
-
inc5 显然是一个变量(当然在第 1 点)