gpt4 book ai didi

c# - 了解python中的阶乘函数

转载 作者:太空宇宙 更新时间:2023-11-03 12:35:21 24 4
gpt4 key购买 nike

我试图了解以下 Python 函数是否:

def factorial(i):
if not hasattr(factorial, 'lstFactorial'):
factorial.lstFactorial = [None] * 1000
if factorial.lstFactorial[i] is None:
iProduct = 1
for iFactor in xrange(1, i+1):
iProduct *= iFactor
factorial.lstFactorial[i] = iProduct
return factorial.lstFactorial[i]

将产生与 C# 中的等效结果相同的结果:

long factorial(long n) 
{
return n <= 1 ? 1 : n * factorial(n-1);
}

对于 12 或更小的值。

我对 Python 一无所知,但刚刚将一些 Python 代码转换为 C#。这是我唯一没有完全理解的功能。

最佳答案

这里是主要算法

iProduct = 1
for iFactor in xrange(1, i+1):
iProduct *= iFactor

其他代码用于缓存结果。

关于c# - 了解python中的阶乘函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1639976/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com