首页 > 技术文章 > Python基础_函数的递归

for-master 2021-03-17 23:16 原文

函数的递归

  函数调用自身的 编程技巧 称为递归

代码特点

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)

代码流程

 

推荐阅读