python中的高阶函数,它可以把一个函数作为参数,而且可以把一个函数作为参数而且可可以把一个函数作为返回值,格式如下。
map(func,seq) 其中第一个参数是函数,第二个参数是一个序列,作用是把序列seq中的元素依次传给函数func进行处理,返回一个迭代器。
t_list=[1,2,3,4,5]
def fc(x):
return x**2;
mp=map(fc,t_list)
for i in mp:
print("{} ".format(i))
输出如下:
1
4
9
16
25
filter(func,seq),这个函数同样接受函数func和序列seq两个参数,他的作用是过滤序列,把序列中seq中的元素依次传递给函数func进行判断,符合条件的留下来,不符合条件的去掉,返回值仍然是一个迭代器。
实例如下:
t_list=[1,2,3,4,5,6]
def func(x):
if x%2==1:
return x
c = filter(func,t_list)
for i in c:
print(i)
输出如下:
1
3
5