python3中reduce函数的使用
在python3中如果使用reduce需要先导入
from functools import reduce
reduce函数,reduce函数会对参数序列中元素进行累积。
reduce函数的定义:
reduce(function, sequence [, initial] ) -> value
function参数是一个有两个参数的函数,reduce依次从sequence中取一个元素,和上一次调用function的结果做参数再次调用function。
第一次调用function时,如果提供initial参数,会以sequence中的第一个元素和initial作为参数调用function,否则会以序列sequence中的前两个元素做参数调用function。
举例说明上面这段话的意思.比如有列表lst=[1,2,3,4],我们希望得到列表每个元素之和,代码如下:
from functools import reduce
lst=[1,2,3,4]
print(reduce(lambda x,y: x+y, lst))
那如果我们希望是序列的乘积呢,接下来我们在看下代码,下面代码的意思就是列表每个元素相乘的结果
'''
遇到问题没人解答?小编创建了一个Python学习交流QQ群:857662006
寻找有志同道合的小伙伴,互帮互助,群里还有不错的视频学习教程和PDF电子书!
'''
from functools import reduce
lst=[1,2,3,4]
print(reduce(lambda x,y: x*y, lst))# 结果24
下面来个稍微复杂点的,注意看lambda函数的变化,
from functools import reduce
lst=[1,2,3,4]
print(reduce(lambda x,y: x*y+1, lst))
'''
遇到问题没人解答?小编创建了一个Python学习交流QQ群:857662006
寻找有志同道合的小伙伴,互帮互助,群里还有不错的视频学习教程和PDF电子书!
'''
#计算过程如下:
# 这个式子只有两个参数,没有初始化值,那么就取列表前2项,通过lambda函数计算结果
#1*2+1=3,
#上面计算的结果在与列表第三个元素通过lambda函数计算
# 3*3+1=10
#上面计算的结果在与列表第四个元素通过lambda函数计算
# 10*4+1=41
接下来都是以此类推,可以自己增加几个元素演示,或者换下lamda函数计算,验证结果.
再说说有初始化值的情况, 这个时候就不是取列表的前两项, 而是取初始值为第一个,序列的第一个元素为第二个元素,开始进行lambda函数的应用计算.
说的有点混乱,看代码吧!
from functools import reduce
lst=[1,2,3,4]
print(reduce(lambda x,y: x+y, lst,5))# 5是初始值,也可以理解为第三个参数
# 计算呢过程
-->5+1=6
-->6+2=8
-->8+3=11
-->11+4=15
python3中reduce函数的使用相关推荐
- python中reduce函数的运用_python 中 reduce 函数的使用
reduce()函数也是Python内置的一个高阶函数. reduce()函数接收的参数和 map()类似,一个函数 f,一个list,但行为和 map()不同,reduce()传入的函数 f 必须接 ...
- python3中zip函数_用python实现矩阵转置,python3 中zip()函数
前几天群里有同学提出了一个问题:手头现在有个列表,列表里面两个元素,比如[1, 2],之后不断的添加新的列表,往原来相应位置添加.例如添加[3, 4]使原列表扩充为[[1, 3], [2, 4]],再 ...
- Python3中print函数的换行
Python3中print函数的换行 最近看了看Python的应用,从入门级的九九乘法表开始,结果发现Python3.x和Python2.x真的是有太大的不同之处,就比如这里的换行处理,怕忘记先记下来 ...
- python3打印如何换行_浅谈Python3中print函数的换行
Python3中print函数的换行 最近看了看Python的应用,从入门级的九九乘法表开始,结果发现Python3.x和Python2.x真的是有太大的不同之处,就比如这里的换行处理,怕忘记先记下来 ...
- python3中map函数_python3中map()和reduce()函数
Python内建了map()和reduce()函数. 现在,我们用Python代码实现: def f(x): return x * x r = map(f, [1, 2, 3, 4, 5, 6, 7, ...
- reduce python3_python3中reduce函数的使用
在python3中如果使用reduce需要先导入 from functools import reduce reduce函数,reduce函数会对参数序列中元素进行累积. reduce函数的定义: r ...
- python中reduce函数的运用_Python reduce函数
Python reduce函数教程 在 Python2 中,reduce 函数可以直接使用,在 Python3 中,reduce 函数使用之前需要使用 from functools import re ...
- python3中map函数_解决Python3下map函数的显示问题
map函数是Python里面比较重要的函数,设计灵感来自于函数式编程.Python官方文档中是这样解释map函数的: map(function, iterable, ...) Return an it ...
- python中集合所用的reduce_Python中reduce函数和lambda表达式的学习
reduce函数将一个数据集合(链表,元组等)中的所有数据进行下列操作:用传给 reduce 中的函数 function(有两个参数)先对集合中的第 1.2 个元素进行操作,得到的结果再与第三个数据用 ...
最新文章
- Python 使用readability 提取网页标题
- 重复制造和离散制造特点
- python二值化 感兴趣区域_Python+OpenCV感兴趣区域ROI提取方法
- OpenCV3学习(2.3)——图像读取与鼠标截图
- 2017.10.24 上升序列 思考记录
- Intel 64/x86_64/IA-32/x86处理器 - 锁原子操作(1) - 处理器保证的原子操作
- mysql查出倒序第一条数据_[数据库]mysql 记录根据日期字段倒序输出
- 图像算法七:【形态学图像处理】二值运算、膨胀、腐蚀
- 解决IDEA导入项目后无法运行的问题
- Unity给力插件之ShaderForge
- UML建模和开发预演
- 揭秘 | 2021年移动云API大赛决赛大奖花落谁家?
- Qcon 演讲纪实:详解如何在实时视频通话中实现AR功能
- H5静态网页设计与制作_川西旅游网设计作品(HTML+CSS+jQuery)
- DIY成本35的自制蓝牙音响
- nodebb部署心路历程【加上踩坑合集】
- 【数据分析】分析方法 | 业务知识 | 行业分析
- 市面上微型计算机的主频,目前市面上最大屏幕的手机,你知道是哪款吗?
- 想靠“免费”搅局智能家居,小度添添智能健身镜凭什么?
- 安猪瀚的一家之言:多读书,多看报,少吃零食,多睡觉