前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Python基础【高阶函数】

Python基础【高阶函数】

作者头像
py3study
发布2020-01-15 00:49:32
3440
发布2020-01-15 00:49:32
举报
文章被收录于专栏:python3python3

高阶函数

map(fun,seq)

代码语言:javascript
复制
将seq中的元素依次作为参数传入fun,返回由函数返回值组成的新的列表。
python3:返回一个map对象
python2:返回列表
可以用list将对象转换为列表进行调用

代码:

代码语言:javascript
复制
        def fun(a):
            return a+1
        print(map(fun,[1,2,3,4,5]))
        print(list(map(fun,[1,2,3,4,5])))

输出结果:

Python基础【高阶函数】
Python基础【高阶函数】

filter(fun,seq)

代码语言:javascript
复制
函数用于过滤序列,过滤掉不符合条件的元素,返回由符合条件元素组成的新列表。
该函数接收两个参数,第一个为函数,第二个为序列,序列的每个元素作为参数传递给函数进行判,然后返回 True 或 False,最后将返回 True 的元素放到新列表中。
python3:返回一个filter对象
python2:返回列表

代码:

代码语言:javascript
复制
        def fun(a):
                return True if a%2==1 else False
        print(filter(fun,[1,2,3,4,5]))
        print(list(filter(fun,[1,2,3,4,5])))


输出结果:

Python基础【高阶函数】
Python基础【高阶函数】

reduce(fun,seq)

代码语言:javascript
复制
reduce传入一个函数一个序列
fun的参数必须是2个
首次将seq中前两个元素传入fun中,随后每次将返回值和下一个元素作为新的参数传入函数,直到传入序列中最后一个元素为止,返回一个最后的返回值。
reduce()是python2中的内置函数
python3中需要导入funtools包。
from funtools import reduce

代码:

代码语言:javascript
复制
        import functools
        from functools import reduce
        def fun(a,b):
                return a+b
        print(reduce(fun,[1,2,3,4,5]))

输出结果:

Python基础【高阶函数】
Python基础【高阶函数】

sorted(seq,key=...,reverse=...)

代码语言:javascript
复制
函数对所有可迭代的对象进行排序操作。
返回一个由seq序列组成的新的序列
利用key可对需要排序的元素进行筛选

代码:

代码语言:javascript
复制
        print(sorted([3,1,2,5,4],reverse=True)) ## 逆序
        print(sorted([3,1,2,5,4],key=lambda x:x*-1)) ## 取参数的相反数进行排序

输出结果:

Python基础【高阶函数】
Python基础【高阶函数】
本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2019-06-30 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 高阶函数
    • map(fun,seq)
      • 代码:
      • 输出结果:
    • filter(fun,seq)
      • 代码:
    • reduce(fun,seq)
      • 代码:
      • 输出结果:
    • sorted(seq,key=...,reverse=...)
      • 代码:
      • 输出结果:
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档