python高阶函数map & filter & reduce & sorted
高阶函数为把函数作为参数传入的函数 引用链接 高阶函数 环境 python3.6 map map 函数接收两个参数,一个是函数,一个是序列, map 将传入的函数依次作用到每个序列对应索引的元素,最后结果作为生成器返回。序列参数可传入多个序列 1. 多个序列时,若是长度最短的序列所有元素都已映射,则整个map函数结束 from collections import Iterator a_li, b_li, c_li = list(range(10)), list(range(104)), list(range(1, 15)) m1 = map(lambda x, y, z: x + y + z, a_li, b_li, c_li) print(isinstance(m1, Iterator)) print(list(m1)) 返回的生成器只迭代到最短的序列的所有元素,结果为 True [1, 4, 7, 10, 13, 16, 19, 22, 25, 28] 2. 函数参数除了使用匿名函数,也可以使用自定义的映射函数 def map_func(x, y, z): return x + y + z + 10 m2 = map(map_func, a_li, b_li, c_li) print(list(m2)) 传入函数名,结果为 [11, 14