我爱编程PHP、前端、iOS、Pythonpython爬虫

reduce函数和lambda表达式的学习

2018-07-08  本文已影响5人  西瓜很甜哟

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入门实例<<

上一篇下一篇

猜你喜欢

热点阅读