递归函数
什么是递归函数
如果一个函数,可以自己调用自己,那么这个函数就是一个递归函数。
递归,递就是去,归就是回,递归就是一去一回的过程。
递归函数的条件
一般来说,递归需要 边界条件 ,整个递归的结构中要有 递归前进段 和 递归返回段 。当边界条件不满足,递归前进,反之递归返回。就是说递归函数一定需要有边界条件来控制递归函数的前进和返回。
定义一个简单的递归函数
# 定义一个函数
def recursion(num):
print(num)
if num == 0:
return 'ok'
# 这个函数在自己的作用域中调用自己,这个函数就是一个递归函数
recursion(num-1)
recursion(10)
"""
结果:
10
9
8
7
6
5
4
3
2
1
0
"""
代码解析
我们执行这个函数,参数给了一个10,但是这个函数执行的过程中,又调用了自己,所以现在这个函数就会进入先执行第二次调用自己的过程中,第一次的调用就暂时的阻断了;
第二次调用的时候,num-1,参数就变成了9,继续执行,然后就又执行到了调用自己的代码中,现在就会执行第三次调用的过程中,第二次