【个人笔记】Python-递归函数

1.概念

1.1>、什么叫递归函数

  函数在运行过程中调用函数本身,则该函数称为递归函数(自己用自己  ??嘻嘻)

   下面用代码来描述:

# 递归函数
def diGui(num):
    # 1.打印变量
    print(num)
    # 检测num是否大于0
    if num > 0:
        # 将num-1传递给函数
        diGui(num-1)

# 调用函数
diGui(3)

  输出结果:

 

   传参 3 ,第一个print输出 3,然后进行判断 3 > 0 这是我们需要运行if下的diGui(3-1),也就是把参数2传给diGui(),一直到if为false,程序结束运行,依次打印出 3 2 1 0;

  

 

2.实例

 

1>.使用递归实现:计算某个数的阶乘

# 1.1 使用递归实现:计算某个数的阶乘
# 阶乘n!=1×2×3×...×n  0的阶乘为1

# 普通方式实现
while True:
    x = 1
    n = input('请输入一个自然数,退出程序请输入QUIT:')
    c = 'QUIT'
    if n == c:
        break
    z = int(n)
    for i in range(1, z + 1):
        x *= i
    print(x)


# 递归函数实现
def GetSum(n):
    if n == 1 or n == 0:
        return 1
    return n * GetSum(n - 1)


# 调用函数
print(GetSum(10))

 

 

posted @ 2019-11-30 18:09  清酒伴歌谣  阅读(229)  评论(0编辑  收藏  举报