函数的递归
函数调用自身的 编程技巧 称为递归
代码特点
1.函数内倍的 代码 是相同的,指示针对 参数 不同,处理的结果不同
2.当参数满足一个条件时,函数不再执行
- 这个非常重要,通常称为递归的出口,否则 会出现死循环
代码示例
1 def sum_number(num): 2 3 print(num) 4 # 递归的出口,当参数满足某个条件时,不再执行函数 5 if num == 1: 6 return 7 8 #自己调用自己 9 sum_number(num-1) 10 11 sum_number(3)
代码运行流程
递归案例 --计算数字累加
需求:
1.定义一个函数 sum_numbers
2.能够接收一个 num 的整数参数
3.计算 1+2+...num 的结果
def sum_numbers(num): # 1. 首先考虑出口 if num == 1: return 1 # 2. 数字的累加 num+ (1 ...num -1) # 假设 sum_numbers能够处理1...num -1 temp = sum_numbers(num - 1) # 两个数字的相加 return num + temp result = sum_numbers(100) print(result)
代码流程