Python中Operator计算函数

使用 Operator 模块中的 mul 函数来实现阶乘:

fromoperatorimportmul
deffactWithMul(n):
returnreduce(mul,range(1,n+1))

相对来说,在Operator模块中使用计算功能,使得代码更加简洁。

从源代码分析,mul函数是计算两个参数的乘积。

defmul(a,b):
"Sameasa*b."
returna*b

拓展使用 lambda 方式来实现:

fromfunctoolsimportreduce
deffact(n):
returnreduce(lambdaa,b:a*b,range(1,n+1))

这里使用的是reduce方法。函数函数有两个参数。reduce()函数对集合中的第一个和第二个元素进行函数处理,然后对带有第三个元素的结果进行函数处理,最终得到一个结果。

声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。