python高阶函数

1、map

对于本身操作,第一个参数是f,一个函数,第二个参数是一个list

def fuc(x):

  return x**2

list(map(fuc,[1,2,3]))

fuc可以是简单的函数,也可以是复杂的函数,但是这个函数只能接收一个参数,如:x为list中的某一项,那么,x*x、x**2、x+x*x都能实现

2、reduce

reduce第一个参数是函数,第二个参数是list

第一个函数必须有两个参数,reduce把一个函数作用在一个序列[x1, x2, x3, ...]上,这个函数必须接收两个参数,reduce把结果继续和序列的下一个元素做累积计算,其效果就是:

reduce(f, [x1, x2, x3, x4]) = f(f(f(x1, x2), x3), x4)

3、filter
ython内建的filter()函数用于过滤序列。

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


原文地址:https://www.cnblogs.com/yuruhao/p/6705457.html