为什么第三行“def lazy_prod():”不写成“def lazy_prod(lst):”呢?什么时候函数括号里要写参数,什么时候不用呢
def calc_prod(lst):
def lazy_prod():
def f(x, y):
return x * y
return reduce(f, lst, 1)
return lazy_prod
f = calc_prod([1, 2, 3, 4])
print f()
为什么第三行“def lazy_prod():”不写成“def lazy_prod(lst):”呢?什么时候函数括号里要写参数,什么时候不用呢