python中reduce函数和map函数有什么区别

这篇文章给大家分享的是有关python中reduce函数和map函数有什么区别的内容。小编觉得挺实用的,因此分享给大家做个参考。一起跟随小编过来看看吧。

创新互联公司成立于2013年,我们提供高端成都网站建设成都网站制作网站设计、网站定制、营销型网站建设小程序制作、微信公众号开发、seo优化排名服务,提供专业营销思路、内容策划、视觉设计、程序开发来完成项目落地,为成都玻璃钢雕塑企业提供源源不断的流量和订单咨询。

python中reduce函数和map函数的区别。

1、描述

map是python内置函数,会根据提供的函数对指定的序列做映射。

redece是python中内置函数,会对参数序列中元素进行累计。

2、参数

map(funcion, *iterables)包含两个参数,funcion是一个函数,iterables是序列(列表或元组)。其中,函数(即map的第一个参数位置的函数)可以接收一个或多个参数。

reduce(function, sequence[, initial])中function是函数,function序列(列表或元组)。但是,其函数必须接收两个参数。

3、返回值

map()是对一个向量/矩阵中每个元素同时进行某一操作返回值与原向量维度相同。

reduce()是对向量/矩阵一个序列中的元素依次进行某一操作,返回一个数值。

4、传进去的数值作用

map()是将传入的函数依次作用到序列的每个元素,每个元素都是独自被函数“作用”一次。

reduce()是将传入的函数作用在序列的第一个元素得到结果后,把这个结果继续与下一个元素作用(累积计算)。

5、使用

map()

将iterables中的每个值带入到func函数中执行,返回一个map对象。

a = [1, 2, -3, 2, -5, -9, 6]
b = map(abs, a)
print(list(b))

输出

[1, 2, 3, 2, 5, 9, 6]

reduce()

将序列的每个值带入到function中与前面的执行结果执行函数操作。

from functools import reduce

a = [1, 2, 3, 4, 5]
b = reduce(lambda x, y: x+y, a, 10)
print(b)

输出

25

感谢各位的阅读!关于python中reduce函数和map函数有什么区别就分享到这里了,希望以上内容可以对大家有一定的帮助,让大家可以学到更多知识。如果觉得文章不错,可以把它分享出去让更多的人看到吧!


文章名称:python中reduce函数和map函数有什么区别
文章网址:http://pwwzsj.com/article/jheedg.html