高阶函数概念

高阶函数

First Class Object

  函数在python中是一等公民

  函数也是对象,可掉用的对象

  函数可以做为普通变量、参数、返回值等


 

高阶函数

  数学概念y = g(f(x))

  在数学和科学计算机中,高阶函数应当是至少满足下面一个条件的函数

  接受一个或多个函数作为参数

  输出一个函数


 

内建函数

sorted(iterable,*,key=None,reverse=False) ->list

  排序

filter(function,*iterables) -> map object

  过虑

map(function,*iterables)-> map object

  映射


 

内建函数-高阶函数

sorted(iterable,*key=None,reverse=False)  排序

  立即返回一个新的列表,对一个可迭代对象的所有元素排序,排序规则为key定义的函数,reverse表示是否翻转

sorted(lst,key=lambda x:6-x) # 返回新列表

list.sort(key=lambda x:6-x) # 就地修改


 

内建函数-高阶函数

filter(function or None ,iterable)

  过虑可迭代对象的元素,返回一个迭代器

  function一个具有一个参数的函数,function(item)应返回bool,或等效bool。如果是None,则将元素等效bool。

例如

  list(filter(lambda x:x%3==0, [1,9,55,150,-3,78,28,123]))

  list(filter(None,range(-5,5)))


 

内建函数-高阶函数

map(function,*iterables) -> map object

  对多个可迭代对象的元素按照指定的函数进行映射,返回一个迭代器

  list(map(lambda x:2*x+1,range(5)))

  dict(map(lambda x:(x%5,x),range(500)))

  dict(map(lambda x,y:(x,y),'abcde'),range(10))


 

posted on 2019-01-21 20:36  GuoQiangHuang 阅读( ...) 评论( ...) 编辑 收藏

转载于:https://www.cnblogs.com/Spiri-HGQ/p/10300861.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值