python 高阶函数

python高阶函数:python

接受一个或多个函数做为参数,输出一个函数函数

自定义sort函数:3d

 

内建函数-高阶函数对象

sorted(iterable[, key][, reverse]) 排序blog

sorted(iterable[, key][, reverse]) 排序 ,返回一个新的列表,对一个可迭代对象的全部元素排序,排序规则为key定义的函数,reverse表示是 否排序翻转 排序

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

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

 

 filter(function, iterable) --> filter object 过滤数据function

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

function一个具备一个参数的函数,返回bool 

过滤出数列中能被3整除的数字 :list(filter(lambda x: x%3==0, [1,9,55,150,-3,78,28,123])) 

 

map(func, *iterables) --> map object 映射

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

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

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

 

柯里化Currying:

指的是将原来接受两个参数的函数变成新的接受一个参数的函数的过程。新的函数返回一个以原有第 二个参数为参数的函数 

例:将加法函数柯里化:

经过嵌套函数就能够把函数转换成柯里化函数

相关文章
相关标签/搜索