2.3.1 高阶函数定义
高阶函数就是把函数当做参数传递的函数
示例如下
如上, 调用add
函数时, 分别执行了abs(-8)
和abs(11)
将他们的结果再进行计算
2.3.2 map()函数
map函数是Python内置的一个高阶函数, 他接受一个函数和一个列表, 并把列表的元素依次传递给函数参数, 然后返回一个所有元素处理完成后的列表, 示例如下
如上, f1()
函数会把li
中的每一个元素当做参数执行函数, 处理完成后将所有的结果返回一个列表
2.3.3 reduce()函数
reduce()
函数同样也是Python内置的高阶函数, 其接收的参数与map()
类似, 一个函数, 一个列表, 但处理方式不同, reduce()
传入的函数参数必须要传入两个参数, 第一次执行是将列表的前两个元素传递给函数, 第二次执行是将第一次执行返回的值与第三个元素再次传递给函数, 以此类推, 并返回最终结果, 示例如下
2.3.4 filter()函数
filter()
函数同样接收一个函数和一个列表, 函数对列表每个元素进行判断, 返回True
和False
, filter()
根据判断结果自动过滤掉不符合条件的元素, 返回符合条件的元素组成的列表, 示例如下
2.3.5 匿名函数
顾名思义, 就是没有名字的函数, lambda表达式是一种快速定义单行的最小函数, 可以用在需要函数的任何地方, 示例如下