Python编程 递归函数

  • 作者简介:一名在校计算机学生、每天分享Python的学习经验、和学习笔记。 

  •  座右铭:低头赶路,敬事如仪

  • 个人主页:网络豆的主页​​​​​​

目录

前言

一.函数执行注意点

 二.递归函数

1.递归的介绍

2.例子


前言

本章将会讲解函数执行注意点与Python递归函数。

一.函数执行注意点

  1. 代码从上至下执行
  2. 函数只有在调用的时候才会执行
  3. 函数执行完毕,则返回到函数的调用处
"""
1.代码从上至下执行
2.函数只有在调用的时候才会执行
3.函数执行完毕,则返回到函数的调用处
"""


def test():
    print("--5--")
    return None


def test2():
    print("--3--")
    test()
    print("--4--")


def test3():
    print("--1--")
    test2()
    print("--2--")


# 1 3 5 4 2
test3()

 二.递归函数

#实现阶乘
# n! = 1*2*3*...*n
# 3! = 1*2*3


#计数器
i = 1
res_nums = 1
while i <=3:
    res_nums *= 1
    res_nums = res_nums * i   #1*1*2*3

    i += 1

print(f"3!={res_nums}")

1.递归的介绍

函数Func(args)直接或间接调用函数本身,则该函数称为递归函数。

2.例子

阶乘本质:n! = 1 * 2 * 3 * ... * n

使用递归函数实现阶乘

  1. 使用递归实现,在函数内部调用自己
  2. 递归没有结束条件,一定要自己设定结束条件
  3.  能够用递归实现的,都可以用循环实现,递归效率低所以很少使用
# 使用递归实现,在函数内部调用自己
# 递归没有结束条件,一定要自己设定结束条件
# 能够用递归实现的,都可以用循环实现,递归效率低所以很少使用
def get_nums(num):
    if num > 1:
        return num * get_nums(num-1)
    else:
        return 1


# 4 * 3 * 2 * 1
res = get_nums(3)
print(res)
注意
  1. 递归函数自身没有结束条件,所以需要我们自己设置结束条件,终止函数的调用。
  2. 可以使用递归实现的循环都可以实现,并且递归效率很低,所以递归很少使用

创作不易,求关注,点赞,收藏,谢谢~ 

猜你喜欢

转载自blog.csdn.net/yj11290301/article/details/128429133