我试图理解 lambda
和 reduce()
的工作原理。我尝试了这些示例,但无法理解为什么会出现错误。有人能否解释一下它是如何执行的?
>>> functools.reduce(lambda x,y:x+y, range(10))
45
这个可以正常运行。但是当我尝试这样做时,它给了我一个错误:
>>> functools.reduce(lambda x,y,z:x+y+z, range(10))
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
TypeError: <lambda>() missing 1 required positional argument: 'z'