递归函数(Python)

文章目录


前言

在函数内部,可以调用其他函数。如果一个函数在内部自己调用自己,这个函数就是递归函数。

一、递归函数

在数学上,关于递归函数的定义如下:对于某一函数f(x),其定义域是集合A,那么若对于A集合中的某一个值X0,其函数值f(x0)由f(f(x0))决定,那么就称f(x)为递归函数。

python 复制代码
'''
		计算阶乘 n! = 1 2 3 ... n
		1! = 1  
		2! = 2 × 1 = 2 × 1!  
		3! = 3 × 2 × 1 = 3 × 2!  
		4! = 4 × 3 × 2 × 1 = 4 × 3!  
		...  
		n! = n × (n-1)!    
'''
def func(a): # for循环
    num = 1
    for i in range(1, a+1):
        num = num * i
    print(num)

'''
    func(n) = n * func(n-1)
'''
def func(num): # 递归
    if num > 1:	# 0和1的阶乘都是1;负数没有阶乘
        return num * step_num(num - 1)
    else:
        return 1
相关推荐
Panda__Panda5 分钟前
docker项目打包演示项目(数字排序服务)
运维·javascript·python·docker·容器·c#
Lris-KK1 小时前
力扣Hot100--94.二叉树的中序遍历、144.二叉树的前序遍历、145.二叉树的后序遍历
python·算法·leetcode
zy_destiny2 小时前
【工业场景】用YOLOv8实现抽烟识别
人工智能·python·算法·yolo·机器学习·计算机视觉·目标跟踪
(●—●)橘子……2 小时前
记力扣2009:使数组连续的最少操作数 练习理解
数据结构·python·算法·leetcode
nueroamazing2 小时前
PPT-EA:PPT自动生成器
vue.js·python·语言模型·flask·大模型·项目·ppt
一壶浊酒..3 小时前
python 爬取百度图片
开发语言·python·百度
该用户已不存在3 小时前
工具用得好,Python写得妙,9个效率工具你值得拥有
后端·python·编程语言
广龙宇3 小时前
【一起学Rust · 项目实战】使用getargs库来获取命令行参数
开发语言·python
mit6.8244 小时前
[Agent开发平台] 后端的后端 | MySQL | Redis | RQ | idgen | ObjectStorage
人工智能·python
学编程的小虎4 小时前
用 Python + Vue3 打造超炫酷音乐播放器:网易云歌单爬取 + Three.js 波形可视化
开发语言·javascript·python