【发布时间】:2010-12-17 08:21:43
【问题描述】:
以下是我的python代码:
>>> item = 1
>>> a = []
>>> a.append((1,2,3))
>>> a.append((7,2,4))
>>> sums=reduce(lambda x:abs(item-x[1]),a)
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
TypeError: <lambda>() takes exactly 1 argument (2 given)
>>>
我该如何解决? 谢谢!
【问题讨论】:
-
请注意
sum是python中的内置函数,因此建议您使用不同的名称,就像我在回答中所做的那样。 -
我把总和改成总和,还是出现了同样的错误。
-
是的,当然。下面的答案解释了真正的问题是什么。我只是说现在隐藏
sum函数是一个更好的做法:) -
此外,我认为您可以从答案中看到,尚不清楚您要做什么。您能否添加对该代码应该完成的功能的描述?
标签: python lambda arguments reduce