def fact(n, summ):
if n == 0:
print(summ) -- Prints 55
return summ
fact(n-1, summ + n)
print(fact(10, 0)) -- Output None
答案 0 :(得分:1)
您需要返回fact(n-1, summ + n)
作为返回值。如果函数不返回值,则默认为不返回。
def fact(n, summ):
if n == 0:
return summ
return fact(n-1, summ + n)
print(fact(10, 0))
这将输出:
55
另一方面,您的fact
函数可以在没有第二个参数的情况下重新实现。以下产生相同的输出:
def fact(n):
if n == 0:
return 0
return n + fact(n-1)
print(fact(10))