python中reduce()函数的使用方法示例


Posted in Python onSeptember 29, 2017

前言

本文主要给大家介绍了关于python中reduce()函数使用的相关内容,分享出来供大家参考学习,下面话不多说了,来一起看看详细的介绍:

reduce()函数在库functools里,如果要使用它,要从这个库里导入。reduce函数与map函数有不一样地方,map操作是并行操作,reduce函数是把多个参数合并的操作,也就是从多个条件简化的结果,在计算机的算法里,大多数情况下,就是为了简单化。比如识别图像是否是一只猫,那么就是从众多的像素里提炼出来一个判断:是或否。可能是几百万个像素,就只出来一个结果。在GOOGLE大规模集群里,就是利用这个思想,把前面并行处理的操作叫做map,并行处理之后的结果,就需要简化,归类,把这个简化和归类的过程就叫做reduce。由于reduce只能在一台主机上操作,并不能分布式地处理,但是reduce处理的是map结果,那么意味着这些结果已经非常简单,数据量大大减小,处理起来就非常快。

因此可以把mapreduce过程叫做分析归纳的过程。

看一下面reduce()的例子:

#python 3. 6 
#蔡军生 
#http://blog.csdn.net/caimouse/article/details/51749579 
# 
from functools import reduce 
 
result = reduce(lambda x, y: x+y, [1, 2, 3, 4, 5]) 
print(result)

输出结果:

15

在这个例子里,其实计算过程是这样的:

((((1+2)+3)+4)+5)

python中reduce()函数的使用方法示例

再看一个阶乘的例子:

#python 3. 6 
#蔡军生 
#http://blog.csdn.net/caimouse/article/details/51749579 
# 
from functools import reduce 
 
n = 3 
print(reduce(lambda x, y: x * y, range(1, n + 1))) # 6

输出结果:

6

reduce函数,reduce函数会对参数序列中元素进行累积。

reduce函数的定义:

reduce(function, sequence[, initial]) -> value

function参数是一个有两个参数的函数,reduce依次从sequence中取一个元素,和上一次调用function的结果做参数再次调用function。

第一次调用function时,如果提供initial参数,会以sequence中的第一个元素和initial作为参数调用function,否则会以序列sequence中的前两个元素做参数调用function。

reduce(lambda x, y: x + y, [2, 3, 4, 5, 6], 1)

结果为21(  (((((1+2)+3)+4)+5)+6)  )

reduce(lambda x, y: x + y, [2, 3, 4, 5, 6])

结果为20

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,如果有疑问大家可以留言交流,谢谢大家对三水点靠木的支持。

Python 相关文章推荐
python Django模板的使用方法(图文)
Nov 04 Python
python实现可以断点续传和并发的ftp程序
Sep 13 Python
Python提取网页中超链接的方法
Sep 18 Python
TensorFlow模型保存/载入的两种方法
Mar 08 Python
基于pandas将类别属性转化为数值属性的方法
Jul 25 Python
python 把列表转化为字符串的方法
Oct 23 Python
python pyheatmap包绘制热力图
Nov 09 Python
Python3安装pip工具的详细步骤
Oct 14 Python
Python 异步协程函数原理及实例详解
Nov 13 Python
pyspark给dataframe增加新的一列的实现示例
Apr 24 Python
基于PyTorch中view的用法说明
Mar 03 Python
Python代码实现双链表
May 25 Python
Django Admin 实现外键过滤的方法
Sep 29 #Python
python 调用c语言函数的方法
Sep 29 #Python
python文件名和文件路径操作实例
Sep 29 #Python
Python 实现简单的shell sed替换功能(实例讲解)
Sep 29 #Python
Python 基础教程之闭包的使用方法
Sep 29 #Python
python下实现二叉堆以及堆排序的示例
Sep 29 #Python
Python数据结构与算法之链表定义与用法实例详解【单链表、循环链表】
Sep 28 #Python
You might like
PHP脚本数据库功能详解(中)
2006/10/09 PHP
php将fileterms函数返回的结果变成可读的形式
2011/04/21 PHP
Laravel执行migrate命令提示:No such file or directory的解决方法
2016/03/16 PHP
Thinkphp单字母函数使用指南
2016/05/08 PHP
php使用Jpgraph创建折线图效果示例
2017/02/15 PHP
javascript window对象属性整理
2009/10/24 Javascript
js中字符替换函数String.replace()使用技巧
2011/08/14 Javascript
jquery实现的一个简单进度条效果实例
2014/05/12 Javascript
jQuery中remove()方法用法实例
2014/12/25 Javascript
jQuery实现鼠标划过修改样式的方法
2015/04/14 Javascript
jQuery消息提示框插件Tipso
2015/05/04 Javascript
jQuery实现两个select控件的互移操作
2016/12/22 Javascript
详解Angular之constructor和ngOnInit差异及适用场景
2017/06/22 Javascript
bootstrap Table服务端处理分页(后台是.net)
2017/10/19 Javascript
nodejs实现简单的gulp打包
2017/12/21 NodeJs
vue2.0 elementUI制作面包屑导航栏
2018/02/22 Javascript
vue + typescript + video.js实现 流媒体播放 视频监控功能
2019/07/07 Javascript
python实现批量获取指定文件夹下的所有文件的厂商信息
2014/09/28 Python
浅谈python中列表、字符串、字典的常用操作
2017/09/19 Python
Python数据类型中的“冒号“[::]——分片与步长操作示例
2018/01/24 Python
numpy中的高维数组转置实例
2018/04/17 Python
学python安装的软件总结
2019/10/12 Python
python通过函数名调用函数的几种场景
2020/09/23 Python
Python 利用Entrez库筛选下载PubMed文献摘要的示例
2020/11/24 Python
CSS3实现DIV圆角效果完整代码
2012/10/10 HTML / CSS
HTML5 Convas APIs方法详解
2015/04/24 HTML / CSS
日本非常有名的内衣丝袜品牌:GUNZE
2017/01/06 全球购物
美国零售商店:Blue&Cream
2017/04/07 全球购物
西班牙床垫网上商店:Colchones.es
2018/05/06 全球购物
工商管理专业实习生自我鉴定
2013/09/29 职场文书
自我评价怎么写好呢?
2013/12/05 职场文书
小学生环保倡议书
2014/05/15 职场文书
市场调查策划方案
2014/06/10 职场文书
一年级数学下册复习计划
2015/01/17 职场文书
信用卡催款律师函
2015/05/27 职场文书
nginx proxy_cache 缓存配置详解
2021/03/31 Servers