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)