8

我想知道是否有一种快速的 Pythonic 方法来计算非整数的阶乘(例如 3.4)?当然,模块factorial()中的内置函数Math是可用的,但它只适用于积分(我这里不关心负数)。

4

2 回答 2

16

你会想要使用math.gamma(x).

伽玛函数是阶乘函数对实数的扩展。

请注意,与阶乘函数相比,该函数移动了 1。math.factorial(n)也是如此math.gamma(n + 1)

于 2012-04-07T17:46:58.393 回答
3

在 Python 2.7 或 3.2 中,您可以使用math.gamma(x + 1). 在旧版本中,您需要一些外部库,例如 SciPy。

于 2012-04-07T17:48:02.603 回答