如何分析python的map、reduce函数

技术如何分析python的map、reduce函数这篇文章给大家介绍如何分析python的map、reduce函数,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。小编讲的是Python的map、red

本文介绍了如何分析python的映射和减少函数。内容很详细,有兴趣的朋友可以参考一下,希望对你有帮助。

边肖谈到了Python的map、reduce函数。

这对兄弟是出现频率极高相当实用,的python函数,初学者很难理解。看完这篇文章你就能搞定了!

如何分析python的map、reduce函数

01map

map()方法会将函数映射发送到序列,的每个元素,并生成一个包含所有函数返回值的新序列。

也就是说,把序列中的每一个元素都当作一个x变量,放入一个函数f(x),结果就是一个由f(x1)、f(x2)、f(x3)等组成的新序列。

如何分析python的map、reduce函数

如何使用map函数?

映射(函数到应用,输入列表)

Function_to_apply:表示函数。

List_of_inputs:表示输入序列。

注意:python3中的映射函数返回一个迭代器.

大多数时候,我们必须将列表中的所有元素逐个传递给一个函数,并收集输出。

例如:

项目=[1,2,3,4,5]#列表

平方=[]

foriinitems:

平方追加(i**2)

地图功能可以以更简单、更美观的方式实现:

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

squared=list(map(lambda x : x * * 2,items))

上面使用了匿名函数,也可以自定义函数:

     
   
   
   items = [1, 2, 3, 4, 5]  
    
    def f(x):  
    
        return x**2  
    
    squared = list(map(f, items))

02

reduce

reduce相比map稍复杂点

reduce的工作过程是 :在迭代序列的过程中,首先把 前两个元素(只能两个)传给 函数,函数加工后,然后把 得到的结果和第三个元素 作为两个参数传给函数参数, 函数加工后得到的结果又和第四个元素 作为两个参数传给函数参数,依次类推。 

如何分析python的map、reduce函数

reduce函数怎么用?

     
   
   
   reduce(function, iterable[, initializer])
  • function:代表函数

  • iterable:序列

  • initializer:初始值(可选)

与map不同,reduce不可以直接使用,需要用from functools import reduce导入

如何分析python的map、reduce函数

比如说我要求10的阶乘,就可以用reduce做:

     
   
   
   # 导入reduce  
    
    from functools import reduce   
    
    # 定义函数  
    
    def f(x,y):  
    
        return x*y  
    
    # 定义序列,含1~10的元素  
    
    items = range(1,11)  
    
    # 使用reduce方法  
    
    result = reduce(f,items)  
    
    print(result)

关于如何分析python的map、reduce函数就分享到这里了,希望

内容来源网络,如有侵权,联系删除,本文地址:https://www.230890.com/zhan/134040.html

(0)

相关推荐

  • 如何构建一个自己的Base Image 镜像

    技术如何构建一个自己的Base Image 镜像如何构建一个自己的Base Image 镜像,很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。m

    攻略 2021年10月19日
  • qt 绘制折线(qt地图绘制)

    技术Qt编写地图综合应用之如何绘制覆盖物折线这篇文章给大家分享的是有关Qt编写地图综合应用之如何绘制覆盖物折线的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。一、前言折线图目前应用最广的也是用来

    攻略 2021年12月25日
  • Java Spring Boot怎样彻底解决SSM配置问题

    技术Java Spring Boot怎样彻底解决SSM配置问题Java Spring Boot怎样彻底解决SSM配置问题,很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来

    攻略 2021年10月31日
  • ln求导公式,ln,X+√1+x2)如何求导

    技术ln求导公式,ln,X+√1+x2)如何求导(ln(x+√(1+x^2)))=(x+√(1+x^2))/(x+√(1+x^2))
    =(1+2x/(2√(1+x^2)))/(x+√(1+x^2))
    =1/√(1+x^2

    生活 2021年10月21日
  • 牡丹鹦鹉怎么养,牡丹鹦鹉是怎么繁殖与喂养的

    技术牡丹鹦鹉怎么养,牡丹鹦鹉是怎么繁殖与喂养的首先先忙明确一下:牡丹鹦鹉面类是可以养殖牡丹鹦鹉怎么养,如果是头类牡丹鹦鹉就要办理饲养证。
    正文开始了:
    如果你打算自己繁殖你的鹦鹉,首先必须为小鸟准备一个爱巢,尺寸不能小于

    生活 2021年10月21日
  • java如何集成小米推送服务

    技术java如何集成小米推送服务这期内容当中小编将会给大家带来有关java如何集成小米推送服务,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。集成小米推送服务这类推送一般官方文档都比较详

    攻略 2021年10月20日