首页 > 其他 > 详细

常见的一些高阶函数

时间:2019-11-08 19:08:42      阅读:76      评论:0      收藏:0      [点我收藏+]

什么是高阶函数,就是把函数名作为参数的函数,常见的有

1.sorted,一看名字就知道这个是用来排序的,默认是升序,也可以设置参数resevred=false来降序,返回的是一个列表,那如果我们想按照绝对值的大小来排序呢

,比如说-5大于4

技术分享图片

 

 

 abs是内建函数abs(),用来求绝对值的,这里只要把名字传进去就可以,过程如下,2经过abs变成2,-3先经过abs变成3,。。。然后在进行比较,3>2,所以原值-3就在2前面,当然我们也可以传匿名函数lamdba,效果是一样的

技术分享图片

 

 

 

2.map,map是把iterable中的每一个对象都作用于函数参数,注意返回的是一个Iterator

技术分享图片

 

 

3.filter,filter把每个Iterable中的元素都在参数函数进行过滤,返回值为true的就保留,返回的也是一个Iterator

技术分享图片

 

 

4.reduce,reduce是把其中的元素进行累计,比如

技术分享图片

 

 先把第一个元素1和第二个元素2相乘,结果再作为函数第一个参数,再把第三个元素-3作为函数第二个参数,如此循环下去,返回的是一个数字,

要注意的是在python2中reduce是内建函数,可以直接用,但是在python3中是放在functools模块中的

在很多语言中都会有map,filter,reduce函数,比如javascript,但是作用都是一样

常见的一些高阶函数

原文:https://www.cnblogs.com/diwangguilai/p/11821998.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!