python-高阶函数,内置参数

变量可以指向函数,函数的参数能接收变量,那么一个函数就可以接收另一个函数作为参数,这种函数就称之为高阶函数,函数式编程就是指这种高度抽象的编程范式。

简例:

def add(x,y,f):

    return f(x) + f(y)

res = add(3,-6,abs)

print(res)

Map函数:

map()函数接收两个参数,一个是函数,一个是序列,map将传入的函数依次作用到序列的每个元素,并把结果作为新的list返回。 map(add, range(10), range(10))也可以有多个序列

reduce函数:

把一个函数作用在一个序列[i1, i2, i3…]上,这个函数必须接收两个参数,reduce把结果继续和序列的下一个元素做累积计算。

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

内置函数:https://docs.python.org/3/library/functions.html?highlight=built#ascii (详情)

posted @ 2018-03-25 20:45  小夕公子  阅读(185)  评论(0编辑  收藏  举报