Python - Reduce 函数

2023-09-17 22:26:39

reduce()函数在 functools 模块中定义。 与映射和过滤器函数一样,reduce()函数接收两个参数,一个函数和一个可迭代对象。 但是,它不会返回另一个可迭代对象,而是返回单个值。

语法:(Syntax:)

functools.reduce(myfunction, iterable, initializer)

参数函数从左到右累积应用于列表中的参数。函数在第一次调用中的结果成为第一个参数,列表中的第三项成为第二个参数。 重复此操作,直到列表用尽。

在下面的示例中,mult() 函数定义为返回两个数字的乘积。此函数与 1 到 4 之间的数字范围(即 1,2 和 3)一起用于reduce()函数中。 输出的阶乘值为 3。

import functools
def mult(x,y):
    print("x=",x," y=",y)
    return x*y
fact=functools.reduce(mult, range(1, 4))
print ('Factorial of 3: ', fact)

注意:

X=1 y=2
X=2 y=3
Factorial of 3: 6

本文内容总结: