Python高阶函数其实很好了解,就是把一个函数作为参数传递给另一个函数应用,留神这里的函数在作为参数的时候不能带小括号,带小括号示意执行函数。留神如果作为参数的函数返回值为它本人,则为前面课程要讲的递归函数。
1.高阶函数合成
间接上代码解说
def func1(a, b): return a + bdef func2(a, b): return a - bdef func(m, n, funcx): print(funcx(m, n))func(10, 5, func1) # 这里把func1赋值给函数func的第三个参数,第三个参数有两个形参,借助于func传递两个形参分辨赋值10和5func(10, 5, func2)
下面的func就是高阶函数,外面传递三个参数,其中funcx就的承受另一个函数的形参。
2.后面咱们学习过的一个列表处理函数,其实就是高阶函数,上面咱们来梳理一下。
list = [{'name': 'Tom3', 'age': 16.5}, {'name': 'Tom2', 'age': 17}, {'name': 'Tom1', 'age': 16}]def get_key(x): print(x) return x['age']res = sorted(list, key=get_key) # 在这里咱们把函数get_key当做形参key的值来应用的print(res)