Python Map函数保姆级使用教程

 更新时间:2022年06月29日 08:38:09   作者:阿黎逸阳  
map是python内置函数,会根据提供的函数对指定的序列做映射,这篇文章主要介绍了python中的map函数语法详解,本文通过示例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下

你应该听说过,应用Python,可以让你处理一天的重复工作量,缩短到几分钟甚至更短。从此解放上班时间,研究更多更有效率的工作方法。进一步提升工作效率,让工作更出彩。这不是广告,这是实锤。

本文和你一起探索Python中的map函数,让你以最短的时间明白这个函数的原理。也可以利用碎片化的时间巩固这个函数,让你在处理工作过程中更高效。

一、map函数的定义

map函数是Python中常用的内置函数,它会根据提供的函数对指定序列做映射。可以用来替换for循环语句,在不使用任何循环的情况下对所有指定元素进行迭代,让代码看起来更简洁。其基本调用语法如下:

map(func, *iterables)

func:函数。

*iterables:一个或多个序列。

二、map函数实例

对数列中的每个元数求平方

如果我们要用循环函数对数列中的每个数求平方,可用如下代码:

new_list = []
for i in [3, 4, 5, 6]:
    new_list.append(i**2)
print(new_list)

得到结果:

[9, 16, 25, 36]

而用map函数一行代码直接搞定,具体如下:

list(map(lambda  x:x**2, [3, 4, 5, 6]))

得到结果:

[9, 16, 25, 36]

其中lambda x:x**2是函数,[3, 4, 5, 6]是原始数列,返回的结果是根据函数对原始数列做的映射。不过map的结果要通过list函数才能显示出来。

求两个数列中对应元素的和

有的人可能会说a是一个数列,b是另一个数列,求两个数列的和那还不简单,直接a+b不就好了。那我们来做个小实验,看看python中两个数列直接用+加起来会得到什么,代码如下:

a = [2, 6, 3]
b = [3, 4, 5]
a + b

得到结果:

[2, 6, 3, 3, 4, 5]

可以发现python中两个数列求+,直接将两个数列拼接后返回。聪明的你想到用map函数怎么操作了吗?具体代码如下:

a = [2, 6, 3]
b = [3, 4, 5]
list(map(lambda a,b:a+b, a, b))

得到结果:

[5, 10, 8]

人工加一下可以发现答案是对的。

求数列中每个元素的长度

对python有了解的小伙伴应该知道len(str) 表示求str的长度。如果想要求数列中每个元素的长度应该怎么写呢?具体代码如下:

list(map(len, ['white', 'blue', 'green', 'yellow']))

得到结果:

[5, 4, 5, 6]

人工校验一下可以发现答案是对的。

把数列中每个英文元素转换成对应的大写

对python有了解的小伙伴应该知道str.upper()表示把str中的字母转换成对应的大写。如果想要把数列中每个元素中的英文都转换成对应的大写应该怎么操作?具体代码如下:

list(map(lambda x:x.upper(), ['white', 'blue', 'green', 'yellow']))

得到结果:

['WHITE', 'BLUE', 'GREEN', 'YELLOW']

人工校验一下可以发现答案是对的。

将字符串转换成数值数列

将字符串转换成数值数列的具体代码如下:

list(map(int, '789'))

得到结果:

[7, 8, 9]

人工校验一下可以发现答案是对的。

提取字典中的键

如果想提取字典中的键你能想到几种方法?本文提供两种方法供大家参考。

方法一:

应用字典自带的函数进行提取,具体代码如下:

dict_1 = {'星期一': '吃榴莲', '星期二': '吃葡萄' , '星期三': '吃西瓜', '星期四': '吃樱桃', '星期五': '吃波罗蜜', '星期六': '吃葡萄', '星期天': '吃猕猴桃'}
list(dict_1.keys())

得到结果:

['星期一', '星期二', '星期三', '星期四', '星期五', '星期六', '星期天']

人工校验一下可以发现答案是对的。

方法二:

应用map函数进行提取,具体代码如下:

list(map(str, {'星期一': '吃榴莲', '星期二': '吃葡萄' , '星期三': '吃西瓜', '星期四': '吃樱桃', '星期五': '吃波罗蜜', '星期六': '吃葡萄', '星期天': '吃猕猴桃'}))

得到结果:

['星期一', '星期二', '星期三', '星期四', '星期五', '星期六', '星期天']

可以发现方法二和方法一得到的结果是一致的。从以上几个案例中可以发现应用map函数可以使得代码更加地简洁。

到此这篇关于Python Map函数保姆级使用教程的文章就介绍到这了,更多相关Python Map函数内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • 详解Python 使用 selenium 进行自动化测试或者协助日常工作

    详解Python 使用 selenium 进行自动化测试或者协助日常工作

    这篇文章主要介绍了Python 使用 selenium 进行自动化测试 或者协助日常工作,我们可以使用 selenium 来帮助我们进行自动化的 Web 测试,也可以通过 selenium 操作浏览器做一些重复的,简单的事情,来减轻我们的工作
    2021-09-09
  • Python调用百度AI实现图片上文字识别功能实例

    Python调用百度AI实现图片上文字识别功能实例

    百度AI功能还是很强大的,百度AI开放平台真的是测试接口的天堂,免费接口很多,当然有量的限制,但个人使用是完全够用的,下面这篇文章主要给大家介绍了关于Python调用百度AI实现图片上文字识别功能的相关资料,需要的朋友可以参考下
    2021-09-09
  • 详解pytorch 0.4.0迁移指南

    详解pytorch 0.4.0迁移指南

    这篇文章主要介绍了详解pytorch 0.4.0迁移指南,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2019-06-06
  • Python如何实现SSH远程连接与文件传输

    Python如何实现SSH远程连接与文件传输

    这篇文章主要介绍了Python如何实现SSH远程连接与文件传输问题,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2023-05-05
  • python装饰器设置参数方式

    python装饰器设置参数方式

    这篇文章主要介绍了python装饰器设置参数方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2024-02-02
  • Python多元非线性回归及绘图的实现

    Python多元非线性回归及绘图的实现

    本文主要介绍了Python多元非线性回归及绘图的实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2024-04-04
  • 将python程序打包成DLL的三种方式

    将python程序打包成DLL的三种方式

    这篇文章主要介绍了将python程序打包成DLL的三种方式,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2023-02-02
  • Django使用echarts进行可视化展示的实践

    Django使用echarts进行可视化展示的实践

    可视化是将数据转换成图形或图像在屏幕上显示出来,本文主要介绍了Django使用echarts进行可视化展示的实践,感兴趣的可以了解一下
    2021-06-06
  • python如何解析复杂sql,实现数据库和表的提取的实例剖析

    python如何解析复杂sql,实现数据库和表的提取的实例剖析

    这篇文章主要介绍了python如何解析复杂sql,实现数据库和表的提取的实例剖析,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-05-05
  • 解决python pandas读取excel中多个不同sheet表格存在的问题

    解决python pandas读取excel中多个不同sheet表格存在的问题

    这篇文章主要介绍了解决python pandas读取excel中多个不同sheet表格存在的问题,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-07-07

最新评论