Python高阶函数指什么?Python高阶函数有哪些

python高阶函数指的就是将函数作为参数,或者是返回值为函数对象的函数 。那么高阶函数可以自己去定义,也可以去使用已经存在的高阶函数 。下面就是会来详细介绍一下python高阶函数的定义方式,以及一些常用的高阶函数,想了解和学习的小伙伴就往下看看吧 。

Python高阶函数指什么?Python高阶函数有哪些

文章插图
一、自定义
python高阶函数其一实现方法就是将一个函数作为参数,那么在调用这个函数时,就需要把函数对象作为参数放在括号之中 。如果这两个函数都有参数存在,那么参数的类型以及数量需要是一致的,代码示例如下所示:
def fun(a):  return a*adef fun1(a,b,c):  return a(b)+a(c)print(fun1(fun(),1,5))26在上面的代码示例之中是将函数fun,作为另外一个函数fun1调用时的参数给传递了进去 。那么在后面有分别传递了1和5两个数字进去,这样就是会先将函数fun1执行后得到它的返回值 。用其返回值分别乘以b和c两个参数,再将得到的结果返回 。
另外一种方式就是将函数作为返回值了,将函数作为返回值的话就是得在一个函数内再定义一个函数才可以,代码如下所示:
def fun(a):  def fun2(b):    return a*b  return fun2()二、内置高阶函数
python最常使用的内置高阶函数分别为map、filter、reduce这三个,并且这三个函数可以接收的参数都是函数对象以及可迭代对象两个 。而map函数的作用就是将对象中所有元素取出来作为参数函数的参数执行,然后再返回成序列,代码如下:
array = [1,4,7]a = map(lambda x:x+1,array)filter函数的作用同样是把对象中元素取出来执行参数函数,不过它只会返回值为True的对象,示例如下:
array = [1,4,7]a = filter(lambda x:x%2==0,array)而reduce函数则是会将对象中前两个元素取出来执行参数函数,然后用二者返回的对象再加上后一个取出来元素再次执行函数,示例如下:
from functools import reducearray = [1,2,3,4,5]result = reduce(lambda x,y:x+y,array)【Python高阶函数指什么?Python高阶函数有哪些】以上就是关于“Python高阶函数指什么?Python高阶函数有哪些”的全部内容了,希望对你有所帮助 。

    推荐阅读