在函数的内部,去调用自己
条件:
1、函数自己调用自己
2、递归一定要有结束条件
#求n!5的阶乘 def fact(n): if n == 1: return 1 return n *fact(n-1) #自己调用自己 print(fact(5))
如果递归的次数太大会导致栈溢出的情况
解决方法:尾递归 ----调用自己的时候没有
def fact(n): return fact_iter(n,1) def fact_iter(num,product): if num == 1: return product return fact_iter(num-1,num*product) print(fact(5))



