在python中,如果我们想要查找某一项内容,可是页面代码过多,这时我们会依靠索引来查找,也就是依靠序列来查找,我们可以通过序列通过索引得到python中的每一个元素。之前小编向大家介绍了序列中的reduce函数和map函数(
,
),他们都有共同的参数functools,他们之前有什么具体的区别吗?本文小编就向大家总结python中
reduce函数和map函数的区别。
1、描述
map是一个python内置函数,根据提供的函数映射指定的序列。
redece是python中内置函数,会对参数序列中元素进行累计。
2、参数
map(funcion, *iterables)包含两个参数,
funcion
是一个函数,
iterables
是序列(列表或元组)。其中,函数(即map的第一个参数位置的函数)可以接收一个或多个参数。
reduce(function, sequence[, initial])中
function
是函数,
function
序列(列表或元组)。但是,其函数必须接收两个参数。
3、返回值
map()是对一个向量/矩阵中的每一个元素同时进行一定的操作,返回值与原始向量维度相同。
reduce()是对一个vector/matrix序列中的元素依次进行一定的操作,并返回一个值。
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()
将序列的每一个值带入函数中,用上一次的执行结果执行函数运算。
from functools import reduce
a = [1, 2, 3, 4, 5]
b = reduce(lambda x, y: x+y, a, 10)
print(b)
输出
25
以上就是通过描述、参数、返回值、传进去的数值作用和具体使用方面向大家总结
reduce函数和map函数的区别。希望能对大家有所帮助哦~
本文为原创文章,版权归知行编程网所有,欢迎分享本文,转载请保留出处!
你可能也喜欢
- ♥ 你用什么工具来学习python10/07
- ♥ python用什么实现报表?12/25
- ♥ python中的SocketServer是什么?10/18
- ♥ 如何在 Mac 上查找 python 路径10/08
- ♥ python中的会话是什么09/26
- ♥ python日志记录的常见解决方案01/08
内容反馈