Python中的reduce
Python中的reduce
python中的reduce内建函数是一个二元操作函数,他用来将一个数据集合(链表,元组等)中的所有数据进行下列操作:用传给reduce中的函数 func()(必须是一个二元操作函数)先对集合中的第1,2个数据进行操作,得到的结果再与第三个数据用func()函数运算,最后得到一个结果。
如:
def myadd(x,y):
return x+y
sum=reduce(myadd,(1,2,3,4,5,6,7))
print sum
#结果就是输出1+2+3+4+5+6+7的结果即28
当然,也可以用lambda的方法,更为简单:
sum=reduce(lambda x,y:x+y,(1,2,3,4,5,6,7))
print sum
在python 3.0.0.0以后, reduce已经不在built-in function里了, 要用它就得from functools import reduce.
意思就是对sequence连续使用function, 如果不给出initial, 则第一次调用传递sequence的两个元素, 以后把前一次调用的结果和sequence的下一个元素传递给function. 如果给出initial, 则第一次传递initial和sequence的第一个元素给function.
1
2
3
4
5
6
7
|
from functools import reduce
reduce ( lambda x,y: x + y, [ 1 , 2 , 3 ])
输出 6
reduce ( lambda x, y: x + y, [ 1 , 2 , 3 ], 9 )
输出 15
reduce ( lambda x,y: x + y, [ 1 , 2 , 3 ], 7 )
输出 13
|
Python中的reduce相关推荐
- python中的reduce、lambda函数
Python中的reduce python中的reduce内建函数是一个二元操作函数,他用来将一个数据集合(链表,元组等)中的所有数据进行下列操作:用传给reduce中的函数 func()(必须 ...
- python中filter(),reduce()函数
filter()函数 是 Python 内置的另一个有用的高阶函数,filter()函数接收一个函数 和一个list,这个函数的作用是对每个元素进行判断,返回 True或 False,filter() ...
- python中的reduce() 函数
在 Python3 中,reduce() 函数已经被从全局命名空间里移除了,它现在被放置在 functools 模块里,需要通过引入 functools 模块来调用 reduce() 函数: from ...
- 在Python中使用Reduce函数
欢迎关注 "小白玩转Python",发现更多 "有趣" 引言 Python 是一种面向对象程序设计语言.但是,它提供了一些提供函数式编程风格的工具.其中一些工具 ...
- python中的reduce函数
1.语法: 在python3中,内置函数中已经没有reduce了.要使用reduce,需要从functools模块里引入 2.作用 对序列中的元素进行累积 3.返回值 返回函数的计算结果 4.例子 f ...
- Python中的reduce()函数----可求积求和
reduce()函数:是Python内置的一个高阶函数.reduce()函数接收的参数和 map()类似,一个函数 f,一个list,但行为和 map()不同,reduce()传入的函数 f 必须接收 ...
- python中的reduce函数用法
2020-09-15 导入相应的函数 from functools import reduce reduce() 函数会对参数序列中的元素进行相同的操作. 函数将一个数据集合(链表,元组等)中的所有数 ...
- 使用Python中的reduce()函数求积
编写一个prod()函数,可以接受一个list并利用reduce()求积. from functools import reduce def prod(x,y):return x * y L = re ...
- [转载] Python 中reduce()与lambda函数详解
参考链接: Python中的reduce a = [2,22,222] Sn = reduce(lambda x,y:x+y,a) print "计算和为:",Sn reduce( ...
最新文章
- ORA-01109:数据库未打开(解决)
- Pycharm 和 vscode 多光标、折叠代码和代码格式化快捷键
- vi常用命令与设置(不断修改中)
- ruby 集合 分组_将Ruby中两个集合的所有元素结合在一起
- webpack系列-plugin
- transient关键字和volatile关键字
- python沿中心线绘制矩形_间隙填充轮廓/线 - python
- 估值指标方法20190805
- linux是一个工程而不是理论
- AcWing提高算法课Level-3 第四章 高级数据结构
- Spring Security三种认证
- endnote 参考文献加序号_EndNote同一文章的插入不同编号参考文献的方法 | 科研动力...
- 笔记7:winfrom的一些知识点(一)
- LLVM与Clang的概述及关系
- 嵌入式面试常见问题(六)—各大公司面试题
- 论车牌识别与电子警察关系
- 浅谈clientX、offsetX、screenX、pageX
- Unexpected Exception caught setting '' on 'class com.: Error setting expression '' with value ['', ]
- Vlan 单线复用之复式二层住宅网络改造实操案例(一)
- 免费的视频转换器有哪些?推荐3款好用免费视频格式转换软件
热门文章
- java怎么创建二进制文件_Java:如何编写二进制文件?
- OpenStack neutron中AsyncProcess类
- linux启动程序api编程,Linux编程中关于API函数与系统调用间关系
- 计算机科学环境保护,CMU-如何利用计算机科学、机器学习和人工智能保护环境.pdf...
- android数据库降级_android——数据库版本升/降级问题
- linux的内核设计,Linux内核设计艺术(经典).pdf
- catia圆柱转化为圆台_浅析actran气动噪声仿真技术,以圆柱绕流气动噪声仿真为例...
- Redis 是并发安全的吗?你确定?
- MySQL 优化上来就分库分表?面试官:根本不懂底层原理!
- 赠书:“替代Linux”?!全球技术海啸来临!