Skip to main content
 首页 » 编程设计

Python 表达递归函数的更好方法

2025年05月04日34shanyou

Python 版本 2.7.6

我编写了一个迭代函数来计算特定阶乘预期的尾随零的数量。然后我尝试将其重写为递归函数。 这是递归的结果:

def f_FactorialTailZeros(v_Num, v_Result = 0): 
    if v_Num < 5: 
        return v_Num 
    v_Result = v_Result + f_FactorialTailZeros(v_Num // 5, v_Num // 5) 
    return v_Result 
 
print(f_FactorialTailZeros(30)) ## 7 
print(f_FactorialTailZeros(70)) ## 16 

它有效,但是,为了学习,有没有更好的方法?

请您参考如下方法:

根据您的代码:

def f_FactorialTailZeros(v_Num): 
    if v_Num < 5: 
        return 0 
    return v_Num // 5 + f_FactorialTailZeros(v_Num // 5)