普通的函数,传递的参数都是整数,字符串,或者是列表,字典,元组之类的。高阶函数传递的参数之一,是函数,也就是把函数当作参数传递进去。而传递进去的函数,会作用于每次传递进去的其他参数。
map(映射)高阶函数
map函数的作用,是把列表元素当作传递函数的参数,传递进去,并把结果再收集起来。
自定义函数的作用是把传递进的值加一,返回。整体的效果,列表的每个元素都加一返回,map是作为独立的数据类型存在的,所以需要用list把数据类型转换为列表。
reduce(减少)高阶函数
自定义函数是把两个参数的和返回。
reduce函数是把列表的前两个元素(a和b)相加,得到的结果(新的a),再和第三个元素(新的b)相加,得到的结果(前三个元素的和,新的a),再和第四个元素相加(新的b,如果有的话)。
filter(过滤)高阶函数
自定义函数是返回的是布尔值,奇数是真True,偶数为假False。
filter函数把真值对应的列表元素(本例是奇数)留下,过滤掉假值对应的元素(本例是偶数),组成新的filter数据类型返回,为了后续的操作,一般还是要转换为列表数据类型。
我们可以把列表替换为由布尔值组成的元素,可以得到相同位置上的元素。
PS:本文代码基于Windows 10,Python 3.10.4。
热门跟贴