Python reduce()


1. 描述

reduce() 对参数序列中元素进行累积。

函数将一个数据集合(元组、列表等)中的所有数据进行下列操作:对集合中的第1、2个元素进行function(两个参数)运算,得到的结果再与第3个元素进行 function() 运算。


Python3 reduce()被移到 functools 模块。

from functools import reduce

2. 语法

reduce(function, iterable[, initializer])

参数

  • function:函数(两个参数)
  • iterable:可迭代对象
  • initializer:可选,初始参数

返回值

函数计算结果。


3. 实例

① 元组、列表里的数累加。

from functools import reduce

def add(x, y):
    return x+y
sum1 = reduce(add, (1, 2 ,3 ,4 ,5))
sum2 = reduce(lambda x, y: x+y, [1, 2, 3 ,4 ,5])
print(sum1)
print(sum2)
15
15

② 列表拼成整数。

from functools import reduce

a = reduce(lambda x, y: x*10 + y, [1, 2, 3, 4, 5])      # 10+2=12 12*10+3=123 123*10+4=1234 1234*10+5=12345
b = reduce(lambda x, y: x + y*10, [1, 2, 3, 4, 5])      # 1+2*10=21 21+3*10=51 51+4*10=91 91+5*10=141
print(a)
print(b)
12345
141


posted @   做梦当财神  阅读(90)  评论(0编辑  收藏  举报
编辑推荐:
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
阅读排行:
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· C#/.NET/.NET Core优秀项目和框架2025年2月简报
· Manus爆火,是硬核还是营销?
· 终于写完轮子一部分:tcp代理 了,记录一下
· 【杭电多校比赛记录】2025“钉耙编程”中国大学生算法设计春季联赛(1)
点击右上角即可分享
微信分享提示