python中reduce函数什么意思,Python map reduce

  python中reduce函数什么意思,Python map reduce

  在python中,如果我们想要查找某个东西,但是页面代码太多,那么我们就会依靠索引来查找,也就是序列来查找。我们可以通过序列的索引得到python中的每个元素。在之前的序列中,边肖介绍了reduce函数和map函数(https://www.py.cn/jishu/jichu/21819.html,https://www.py.cn/jishu/jichu/21821.html)。它们都有相同的参数functools。之前他们之间有什么具体的区别吗?本文总结了python中reduce函数和map函数的区别。

  1、描述

  Map是python的内置函数,根据提供的函数映射指定的序列。

  Redece是python中的内置函数,它在参数序列中累加元素。

  2、参数

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

  reduce (function,sequence [,initial])中的函数是一个函数,一个函数序列(list或tuple)。但是,它的函数必须接收两个参数。

  

  uot;; font-size: 14px; color: rgb(0, 0, 0);">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中与前面的执行结果执行函数操作。

  

fromfunctoolsimportreduce

  a=[1,2,3,4,5]

  b=reduce(lambdax,y:x+y,a,10)

  print(b)

输出

  

25
以上就是通过描述、参数、返回值、传进去的数值作用和具体使用方面向大家总结reduce函数和map函数的区别。希望能对大家有所帮助哦~

郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。

留言与评论(共有 条评论)
   
验证码: