老师,可以讲述一下map()和filter()的区别吗

老师,可以讲述一下map()和filter()的区别吗

我试了下map()和filter()函数作用在同一个序列中,可是得到的结果怎么是这样子的,我是感觉这两个函数差不多的呢,为啥得出的结果就不一样呢

http://img1.sycdn.imooc.com//climg/5d8b350a097d662618420791.jpg

http://img1.sycdn.imooc.com//climg/5d8b350a09787b3716000803.jpg


正在回答 回答被采纳积分+1

登陆购买课程后可参与讨论,去登陆

2回答
阿噜 2019-10-13 11:07:28

将判断结果True或False进行返回,组成新的列表

列表中是布尔型的值吗?

  • 同学,你好。在Python3中,filter()返回的是filter对象,需要使用list()将结果转换成列表,该列表中的元素为符合条件的元素。祝学习愉快~~~~
    2019-10-14 10:05:04
好帮手慕美 2019-09-25 17:59:09

同学,你好。

1、map() :参数序列中的每一个元素调用 function 函数,返回包含每次 function 函数返回值的新列表。

在同学的案例中,l列表中的元素会根据f函数进行判断,将判断结果True或False进行返回,组成新的列表

http://img1.sycdn.imooc.com//climg/5d8b390a09ff100604600220.jpg

2、filter():用于过滤序列,过滤掉不符合条件的元素,返回由符合条件元素组成的新列表。该函数接收两个参数,第一个为函数,第二个为序列,序列的每个元素作为参数传递给函数进行判断,然后返回 True 或 False,最后将返回 True 的元素放到新列表中。

本案例中,filter()会将f()函数返回True的元素放到新的列表中,即l列表中为奇数的元素

http://img1.sycdn.imooc.com//climg/5d8b3a3909d1145404770221.jpg

如果我的回答解决了您的疑惑,请采纳!祝学习愉快~~~~

问题已解决,确定采纳
还有疑问,暂不采纳

恭喜解决一个难题,获得1积分~

来为老师/同学的回答评分吧

0 星
1.Python零基础入门
  • 参与学习           人
  • 提交作业       2727    份
  • 解答问题       8160    个

想要进入Python Web、爬虫、人工智能等高薪领域,你需要掌握本阶段的Python基础知识,课程安排带你高效学习轻松入门,学完你也能听得懂Python工程师的行业梗。

了解课程
请稍等 ...
意见反馈 帮助中心 APP下载
官方微信

在线咨询

领取优惠

免费试听

领取大纲

扫描二维码,添加
你的专属老师