functools.reduce函数
functools.reduce函数的作用:将含有两个自变量的函数从左到右累加地应用到序列中的项,最终将序列缩减为单个值。
用法
from functools import reduce
reduce(function, sequence[, initial]) -> value
参数:
function:包含两个自变量的函数;sequence:序列;initial:可选参数,表示初始值
实例
实例1
reduce(lambda x, y: x+y, [1, 2, 3, 4, 5])
输出:
15
上述计算过程可分解为:
- 第一步,计算1+21+21+2,得333;
- 第二步,计算3+33+33+3,得 666;
- 第三步,计算6+46+46+4,得 101010;
- 第四步,计算10+510+510+5,得 151515.
实例2
reduce(lambda x, y: x-y, [1, 2, 3, 4, 5],15)
输出:
0
上述函数的第三个参数,指定了一个初始值:15,计算步骤可分解为:
- 第一步,计算15−115-115−1,得141414;
- 第二步,计算14−214-214−2,得 121212;
- 第三步,计算12−312-312−3,得 999;
- 第四步,计算9−49-49−4,得 555;
- 第五步,计算5−55-55−5,得 000.
functools.reduce() 是Python中用于将函数作用于序列,从左到右累计计算,将序列缩减为单个值。它需要一个双参数函数和一个序列作为输入,还可以提供一个初始值。例如,在实例1中,reduce() 计算了序列 [1, 2, 3, 4, 5] 的累加和;而在实例2中,初始值15被用作累加的起点,最终得到结果0。"
113778803,6920855,Java实现高效高斯模糊技术,"['java', '高斯模糊', '图片处理', '性能优化', '内存优化']
1万+

被折叠的 条评论
为什么被折叠?



