2018-07-19 函数式编程01

高阶函数  Higher-order function

即可以赋值给变量、函数名为变量、甚至可以将函数作为参数的函数

map/reduce

map(f,Iterable) 将函数f依次作用于Iterable中每个元素,并把结果作为新的Iterrable返回。

reduce(f, [x1, x2, x3, x4]) = f(f(f(x1, x2), x3), x4  #注,其中的f必须接受两个参数

filter

和map()类似,filter()也接收一个函数和一个序列。和map()不同的是,filter()把传入的函数依次作用于每个元素,然后根据返回值是True还是False决定保留还是丢弃该元素。

sort

可以对list进行排序

可以接收一个key函数来实现自定义的排序,例如按绝对值大小排序:

>>> sorted([36,5, -12,9, -21], key=abs)

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 函数式编程:把函数作为参数传入,这样的函数称为高阶函数,函数式编程就是指这种高度抽象的编程范式。 map/redu...
    Roct阅读 2,738评论 0 0
  • 函数式编程就是一种抽象程度很高的编程范式,纯粹的函数式编程语言编写的函数没有变量,因此,任意一个函数,只要输入是确...
    齐天大圣李圣杰阅读 5,453评论 0 2
  • 函数式编程就是一种抽象程度很高的编程范式,纯粹的函数式编程语言编写的函数没有变量,因此,任意一个函数,只要输入是确...
    DramaScript阅读 2,241评论 0 0
  • 自从养了猫,朋友圈里出镜率很高,慢慢也聚集了人气,我称她们为米粉(糯米的粉丝)和五分(小五的粉丝)。 她们之中有人...
    周琴zq阅读 3,427评论 0 4

友情链接更多精彩内容