我想知道是否有一种快速的Pythonic方法来计算非整数的因子(例如,3.4)?当然,factorial()
模块中的bult-in Math
函数是可用的,但它仅适用于积分(我不关心负数)。
答案 0 :(得分:13)
您想使用math.gamma(x)
.
gamma function是阶乘函数对实数的扩展。
请注意,与阶乘函数相比,函数移位1。因此math.factorial(n)
为math.gamma(n + 1)
。
答案 1 :(得分:3)
在Python 2.7或3.2中,您可以使用math.gamma(x + 1)
。在旧版本中,您需要一些外部库,如SciPy。