1 def fact(n): 2 if n>1: 3 return n*fact(n-1) 4 else: 5 return n 6 print(fact(5))
递归函数有两个特点:
1,自己调用自己
2,有一个结束条件
注意:
1,但凡是递归可以写的程序,循环都可以解决。
2,递归效率在很多时候会很低,不推荐使用。
递归使用场景:斐波那契数列
#0,1,1,2,3,5,8,13,21,34 def fbnq(n): if n<=2: return n else: return fbnq(n-1)+fbnq(n-2) print(fbnq(6))