文中例子:f()这里输出10?
def calc_sum(lst):
def lazy_sum():
return sum(lst)
return lazy_sum
>>> f = calc_sum([1, 2, 3, 4])
>>> f
>>> f()
10
1.最后一步这里f()没有输入东西,为什么输出结果是10呢?这种f()的格式是什么意思呢?
2.我尝试f([1,2,3])提示我不能输入:TypeError: lazy_sum() takes no arguments (1 given)
我就猜测文中这里f = calc_sum([1, 2, 3, 4])=lazy_sum([1,2,3,4])=sum([1,2,3,4])=10
是不是让f是一个数字了呢? 但是我尝试print f 是没有输出的
哪位大神能告诉我这个地方f 到底是什么?f()又是什么呢?