📜  阶乘公式 - Python (1)

📅  最后修改于: 2023-12-03 15:28:50.077000             🧑  作者: Mango

阶乘公式 - Python

阶乘是指从1到指定的数之间的所有整数乘积,以感叹号“!”表示。在Python中,可以通过循环和递归两种方式实现阶乘计算。

循环方式实现阶乘
def factorial(n):
    """
    通过循环方式计算阶乘
    
    参数:
    n: int
    
    返回值:
    int
    """
    
    result = 1
    
    for i in range(1, n+1):
        result *= i
        
    return result
递归方式实现阶乘
def factorial(n):
    """
    通过递归方式计算阶乘
    
    参数:
    n: int
    
    返回值:
    int
    """
    
    if n == 1:
        return 1
    else:
        return n * factorial(n-1)

在使用递归方式计算阶乘时,需要注意防止栈溢出,因为计算阶乘时,每次递归调用都会创建一个新的栈帧。可以通过设置递归深度的方式来解决这个问题。例如:

import sys

sys.setrecursionlimit(10000)
使用math库计算阶乘

在Python中,math库提供了一个名为factorial的函数,可以直接计算阶乘。该函数接收一个参数n,表示要计算的数。

import math

result = math.factorial(5)

以上就是Python中阶乘公式的实现方式。