小猿圈python之高阶函数filter和map的用法

作者: f673630174f6 | 来源:发表于2019-07-04 17:09 被阅读0次

python有很多内置函数,内置函数封装了很多功能,让我们用起来很方便,小猿圈针对高阶函数有详细的讲解视频,朋友们可以去看看,小编学后总结了一下,下面说一下filter和map高阶函数的用法。

1、filter()函数

filter函数接收两个参数,一个是函数,一个是序列。filter()把传入的函数依次作用于每个元素,然后根据返回值是True还是False决定保留还是丢弃该元素,具有筛选的作用。

注意:3.x 返回的是一个filter object (后续的函数map也是返回object),要加上list()等类型转换;而之前 2.x 版本的返回值类型和参数sequence的类型相同。

实例:

1

2 def is_oushu(i):

3    if(i%2==0):

4        return True

5    else:

6        return False

7 l = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]

8 l = filter(is_oushu, l)

9 print(l)                                  # 3.x 返回的是对象 filter object

10 l = list(l)                              # 3.x 须做类型转换

11 print(l)

2、map函数

map()函数接收两个参数,一个是函数,一个是可迭代对象(Iterable),map将传入的函数依次作用到序列的每个元素,并把结果作为新的可迭代对象返回。

实例:

1

2 def sqr(i):

3    return i**2

4 l = [1,2,3]

5 l = map(sqr,l)                               

6 print(l)                                    # 3.x 返回的是对象 map object

7 l = list(l)

8 print(l)

filter函数和map函数的用法是不是很简单,其实在实际应用中,这两个高阶函数的应用挺广泛的,想深入学习的小伙伴们Python交流群:874680195,可以去小猿圈做做练习题,练习题有挺有意思的小游戏,做一下扩展。

相关文章

网友评论

    本文标题:小猿圈python之高阶函数filter和map的用法

    本文链接:https://www.haomeiwen.com/subject/hxirhctx.html