Python函数学习之高阶函数

什么是高阶函数?

  1. 接收一个或多个函数作为参数
  2. 将函数作为返回值返回

满足以上任意一点即为高阶函数。

示例如下:

l = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
new_list = []



def fn(func, lst):
   
for n in lst:
       
if func(n):
            new_list.append(n)
   
return new_list


def fn3(i):
   
if i > 5:
        
return True
    return False


def
fn4(i):
   
if i % 3 == 0:
       
return True
    return False


def
fn2(i):
   
if i % 2 == 0:
       
return True
    return False



print(fn(fn2, l))  # 打印列表中的偶数

print(list(filter(fn2,l)))

执行结果如下:

[2, 4, 6, 8, 10]

[2, 4, 6, 8, 10]

当我们使用一个函数作为参数时,实际上是将指定的代码传递进了目录函数。

 

filter函数:

filter(function,iterable)

可以从序列当中过滤出符合条件的元素,保存到一个新的序列中

参数一:传递函数  参数二:需要过滤的序列

返回值为过滤后新的序列。

发布了16 篇原创文章 · 获赞 3 · 访问量 2243

猜你喜欢

转载自blog.csdn.net/OthersOnlyMe/article/details/101483035