def my_func1(num):
if num > 1:
return num * my_func2(num - 1)
else:
return 1
def my_func2(num):
if num > 1:
return num * my_func3(num - 1)
else:
return 1
def my_func3(num):
if num > 1:
return num * my_func4(num - 1)
else:
return 1
def my_func4(num):
if num > 1:
return 2 * my_func5(num - 1)
else:
return 1
def my_func5(num):
if num > 1:
return num * (num - 1)
else:
return 1
print(my_func1(5))
print("测试")
def my_func(num):
if num > 1:
return num * my_func(num - 1)
else:
return 1
print(my_func(5))
- 上式表示对如5的阶乘进行分布演示,从5×4,4×3....1到1的一个分布运算,最后进行整体结合,得出最终递归函数
- 使用递归函数要注意 肯定要有一个停止递归调用的条件
- RecursionError: maximum recursion depth exceeded
- 不能停止的递归函数
def tete():
tete()
tete()