描述
reduce() 函数会对参数序列中元素进行累积。
函数将一个数据集合(链表,元组等)中的所有数据进行下列操作:用传给reduce中的函数 function(有两个参数)先对集合中的第 1、2 个元素进行操作,得到的结果再与第三个数据用 function 函数运算,最后得到一个结果。
语法
reduce() 函数语法:
reduce(function, iterable[, initializer])
返回值
返回函数计算结果。
老方法,先给一个需求,把下面list中的数计算一个和
#用函数写法
num_l = [1,2,3,100]
def reduce_test(array):
res = 0
for num in array:
res+=num
return res
print reduce_test(num_l)
上面写法问题是把计算方法写死了,所以要单独写一个函数
num_l = [1,2,3,100]
def sumadd(x,y):
res=x+y
return res
def reduce_test(func,array):
res = 0
for num in array:
res=func(res,num)
return res
print reduce_test(sumadd,num_l)
最后采用reduce函数和匿名函数结合
print reduce(lambda x,y:x+y,num_l)