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

浏览: 2996

前言

进阶部分连载继续~

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

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(上)

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

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

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


filter

filter是什么意思呢?

我们百度看看:

图片.png


百度翻译是过滤的意思,其实我们可以按照过滤的意思来理解.


使用格式为:   filter(函数, 序列)


小明:老湿,为啥是过滤呢?我还记得初三化学学的过滤操作,“一贴二低三靠”条件呢,就是..


图片.png


好了,这个就下课自己慢慢回忆吧。。。


和之前的map/reduce一样,作为高阶函数,它可以使用函数来对序列进行过滤。


原理是:filter将函数作用到序列的每个元素中,如果函数返回值是true,则保留序列中的该元素,反之则丢弃


小明:哦哦,这就是过滤的体现了。


我们来看个简单的例子:


图片.png


小明:如果是我要得到这个序列的奇数,怎么做呢?


小红:这个简单,可以这样:


图片.png


小红回答的不错,我们现在来加大难度了.


图片.png


如果是求出500以内的素数,该怎么用reduce写呢?


小红:这个有点难,得想想看,素数怎么求来着?


小明:老湿,已经下课了,你看.


好的,那下次课我们好好讲讲这个,顺便说一下求素数的几种方法吧。


今天作业:

1.敲一遍代码,感受一下filter的黑魔法

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

下课

人生苦短,我选Python

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

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


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

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

3 个评论

老师,Python进阶多久更新一次啊
看时间空闲情况
老师,为什么map和filter都需要list才能显示,而reduce不用呢?

要回复文章请先登录注册