python函数式编程

时间:2022-10-12 19:11:51
一、lambda() 主要用来自定义行内函数 二、map() 首先定义一个函数,再用map()命令将函数逐一应用到map列表中的每个元素,最后返回一个数组 例如:map(lambda x,y : x*y,a,b) 表明将a,b两个列表的元素对应相乘,把结果返回到新列表。 三、reduce() 用于递归运算 例如:reduce(lambda x,y : x*y,range(1,n+1)) 计算n的阶乘 四、filter() 是一个过滤器,用来筛选出列表中符合条件的元素。 例如:b=filter(lambda x:x>5 and x<8,range(10)) 返回 [6,7] 因为range(10)返回的是一个列表。 注:我们最终目的是兼顾简洁和效率,以上4个函数的循环速度比python 内置的for循环或while循环要快得多。