【发布时间】:2016-11-25 19:31:11
【问题描述】:
这是我的功能
def add(x, y):
return x+y
这是reduce函数
reduce(add, range(1, 11))
【问题讨论】:
def add(x, y):
return x+y
reduce(add, range(1, 11))
【问题讨论】:
在第一次迭代中,reduce 依次获取前两个值,并将它们作为第一个和第二个位置参数提供给函数。然后函数的返回值成为下一个迭代的第一个位置参数,第二个位置参数是序列中的下一项。您拥有的唯一控制是如何使用函数中的值。
>>> def f(a,b):
return a-b
>>> def g(a,b):
return b-a
>>> reduce(f, range(5))
-10
>>> reduce(g, range(5))
2
>>>
如果您使用的是内置函数,则无法控制。
【讨论】: