语法
在python3中,内置函数中已经没有reduce了。要使用reduce,需要从functools模块里引入
可以看到,reduce有三个参数,第一个是函数function,第二个是序列sequence,第三个是initial,为初始值,默认为None
作用
对序列中的元素进行累积
返回值
返回函数的计算结果
代码实例
代码语言:javascript复制from functools import reduce
from functools import reduce
def add(x, y):
return x y
print(reduce(add, [1, 2, 3, 4, 5])) #计算过程 ((((1 2) 3) 4) 5)
# 运行结果
15
在reduce中使用lambda函数
代码语言:javascript复制from functools import reduce
print(reduce(lambda x, y: x y, [1, 2, 3, 4, 5]))
# 运行结果
15
有初始值的情况,初始值为6
代码语言:javascript复制from functools import reduce
print(reduce(lambda x, y: x y, [1, 2, 3, 4, 5], 6))
# 运行结果
21
#计算过程
6 1 = 7
7 2 = 9
9 3 = 12
12 4 = 16
16 5 = 21
以上就是本文的全部内容,希望对大家的学习有所帮助。