狗不理肉包砸 发表于 2020-12-9 11:25:24

关于内部函数引用外部变量的问题

def funx(x):
        def funy(y):
                return x*y
        return funy

>>> temp=funx(8)
>>> temp(5)
40


这一段是书上的案例,上面的函数我能理解,但是下面对temp的赋值有些疑惑。

temp=funx(8)是对temp进行的赋值。
那么temp(5)的意思是什么呢?里面的5是给y赋值的意思吗?还是单纯的倍数?

翻了下前面的书没找到这个知识点(可能是因为太多漏掉了),拜托有知道的大佬解答一下啦{:5_96:}

逃兵 发表于 2020-12-9 11:37:41

temp=funx(8)
temp(5) = funx(8)(5)

狗不理肉包砸 发表于 2020-12-9 12:11:51

逃兵 发表于 2020-12-9 11:37
temp=funx(8)
temp(5) = funx(8)(5)

明白了,非常感谢!!
页: [1]
查看完整版本: 关于内部函数引用外部变量的问题