Python进阶系列连载(10)——Python内置高阶函数map(下)

浏览: 2709

前言

进阶部分连载继续~

如果还没看过我的入门连载部分,先看:

https://ask.hellobi.com/blog/wangdawei/10288


当然,小编的免费入门课程已经有咯,看过连载的朋友可以看看视频再快速梳理一遍~

视频传送门:https://edu.hellobi.com/course/234

图片.png

前文传送门:

Python进阶系列连载(1)——那些容易被忽略的问题(上)

Python进阶系列连载(2)——那些容易被忽略的问题(中)

Python进阶系列连载(3)——那些容易被忽略的问题(下)

Python进阶系列连载(4)——迭代器

Python进阶系列连载(5)——生成器(上)

Python进阶系列连载(6)——生成器(中)

Python进阶系列连载(7)——生成器(下)

Python进阶系列连载(8)——闭包(上)

Python进阶系列连载(9)——Python内置高阶函数map(上)


上一次说了一下map的基本用法,在上次课程最后,小明和小红分别提出了一个问题,并且想用map来解决


那就给我看看你们问题都解决了么?


小明,你做的怎么样了?


小明:让小红先讲吧,毕竟女士优先嘛!


嗯,小明啊,平时怎么没见你这么绅士,那就小红先讲讲吧。


小红:老湿,我最近在做一个网站,让用户输入验证码的时候,想不区分大小写字母,这样方便用户输入,想批量将他们输入的列表中的字母验证码都转化为大写。


我回去用map试了一下,发现真的很好用呢:


图片.png


嗯,小红做的不错,那小明,你的搞定了么?


小明:老湿啊,我做的时候总是遇到问题,是这样的:我想给一个列表中的字符串去掉空格,我这样写的:


图片.png


这不是实现了么?有什么问题么?


小明:老湿啊,如果列表是这样的话,s.strip()只能去除字符串两端的空格,我想把下面这种输入的中间的空格都去除怎么办呢?


图片.png


嗯,这个嘛,其实是可以这样的,我们学一个新的方法,叫做:replace()


其实strip和replace都是数据清洗常用的方式,我们看看replace吧

其格式为:

s.replace(A , B)

把字符串s中的A字符全部替换成B字符


那你这个需求,是把字符串中的空格全部去掉,相当于把空格替换成空字符了嘛,你再想想怎么写~


小明:哦哦,这个思路挺不错的,我有想法了,可以这样:


图片.png


嗯嗯,小明反应挺快的~


我们再补充一些知识点:


strip():把头和尾的空格去掉

lstrip():把左边的空格去掉

rstrip():把右边的空格去掉


昨天说了两个列表相加可以使用map,那如果是两个元组对应元素相乘,可以使用map么?


小红:这个不难,看我的!


图片.png


嗯,看来你们已经掌握了map的基本用法了~


今天作业:

1. 现在小红设计了一个英文名称输入框,用户输入的姓名字母有大写也有小写,小红希望将名称字母的第一个字符变成大写,其他均为变为小写,你能帮助她么?

2. 敲一遍代码,感受一下map的黑魔法

自己不敲代码永远学不会写代码

下课

人生苦短,我选Python

未完待续,连载中......

欢迎评论指出文中错误和提问~~~


下一篇链接:Python进阶系列连载(11)——Python内置高阶函数reduce(上)

推荐 4
本文由 ID王大伟 创作,采用 知识共享署名-相同方式共享 3.0 中国大陆许可协议 进行许可。
转载、引用前需联系作者,并署名作者且注明文章出处。
本站文章版权归原作者及原出处所有 。内容为作者个人观点, 并不代表本站赞同其观点和对其真实性负责。本站是一个个人学习交流的平台,并不用于任何商业目的,如果有任何问题,请及时联系我们,我们将根据著作权人的要求,立即更正或者删除有关内容。本站拥有对此声明的最终解释权。

5 个评论

王老师,没有答案呢
名称的第一个字母实现大小
list1=['python','asp','java']
list(map(lambda x: x[0].upper()+x[1::],list1))
不错哦
你这样写的话,如果字符串中间出现的大写,是不会改成小写的
例如:['lOVE','weSA','sdWa']
应该写成x[0].upper()+x[1::].lower()

要回复文章请先登录注册