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))