Python:reduce函数和lambda表达式的学习

reduce函数将一个数据集合(链表,元组等)中的所有数据进行下列操作:用传给 reduce 中的函数 function(有两个参数)先对集合中的第 1、2 个元素进行操作,得到的结果再与第三个数据用 function 函数运算,最后得到一个结果。
例如下面代码:

list = [1,2,3,4]
t = reduce(lambda x,y:x*y,list)
print(t)

上述代码传给reduce的函数是做乘法,数据集是list,那么reduce函数的作用就是将数据集中的数据依次相乘,最后打印出的结果就是24。
凡是要对一个数据集合进行操作的,而且需要返回一个统计结果的,能够用循环或者递归方式解决的问题,一般情况下都可以用reduce方式实现。
在python 3.0.0.0以后, 如果要用它就得from functools import reduce。

lambd表达式是一种精简函数的表达方法,省略了函数的定义,命名等问题。如下函数:

def exp(n):
    return n*n

exp(6)返回36
而用lambda表示:

num = lambda n:n*n

num(6)也是36

>>Python入门实例<<

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容