如何在python中创建reduce()

时间:2019-07-01 23:50:24

标签: python python-3.x

当前,我正在创建函数的原始等效项,例如mapfilterreduce等。

通过原始等效项,我的意思是通过循环,条件等语言工具,以最短的方式创建上述功能的等效项。

为了深入了解我要引用的内容,我已经为mapfilter创建了原始等效项。

地图声明语法:-

zip(function(), sequence)

MAP等效:-

[function() for x in sequence]

-------------------------------------------- -------------------------------------------------- --------------------------------------

过滤器声明语法:-

filter(function(), sequence)

FILTER等效:-

[x for x in sequence if (condition)]

mapfilter之间的区别在于,map具有通用功能,另一方面,filter具有通用功能包含条件,因此,输出序列的大小可能与filter

中的输入大小不同

-------------------------------------------- -------------------------------------------------- ------------------------------------ *

现在,我无法为reduce做同样的事情。对于那些不熟悉reduce()-

的人
  

reduce(function(), sequence)函数用于将在其参数中传递的特定函数应用于传递的序列中提到的所有序列元素。与reduce()map返回的序列相反,filter仅具有一个返回值。

展示reduce()工作原理的示例:-

reduce(lambda x, y: x*y, [10, 20, 30])

以上声明的输出:-

6000

PS:-我不需要冗长的函数/ for循环,我想要一个等效于一个衬里的东西,就像我为map和{{ 1}}。

0 个答案:

没有答案