Python入门-5函数:08递归函数

Posted jack-zh

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Python入门-5函数:08递归函数相关的知识,希望对你有一定的参考价值。

递归函数:

  递归函数指的是:自己调用自己的函数,在函数体内部直接或间接的自己调用自己。递归类 似于大家中学数学学习过的“数学归纳法”。

  每个递归函数必须包含两个部分:

    1. 终止条件 表示递归什么时候结束。一般用于返回值,不再调用自己。

    2. 递归步骤 把第 n步的值和第 n-1步相关联。

  递归函数由于会创建大量的函数对象、过量的消耗内存和运算能力。在处理大量数据时,谨 慎使用。

【操作】测试递归函数基本原理

#测试递归函数基本原理

def test01(n):
    print("test01:",n)
    if n == 0:
        print(over)
    else:
        test01(n-1)
    print("test01***",n)

test01(3)

运行结果:

  test01: 3
  test01: 2
  test01: 1
  test01: 0
  over
  test01*** 0
  test01*** 1
  test01*** 2
  test01*** 3

【操作】 使用递归函数计算阶乘(factorial)

#使用递归函数计算阶乘
def factorial(n):
    if n == 1:return 1
    return n*factorial(n-1)

print(factorial(5))

for i in range(1,6):
    print(i,"!=",factorial(i))

运行结果:

  120
  1 != 1
  2 != 2
  3 != 6
  4 != 24
  5 != 120

技术图片

 

以上是关于Python入门-5函数:08递归函数的主要内容,如果未能解决你的问题,请参考以下文章

python入门五(函数)5-2 python中递归函数

Python入门学习

python入门16 递归函数 高阶函数

函数递归与二分法(python3入门)

Python基础入门深浅拷贝函数内置函数文件处理三元运算递归

Python入门之经典函数实例——第1关:递归函数 - 汉诺塔的魅力