递归函数(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
相关推荐
errorPage23 分钟前
Python空值判断避坑指南 + 图片定点缩放逻辑优化实战
python
郝学胜-神的一滴24 分钟前
Python方法类型详解:类方法、静态方法与实例方法
开发语言·python·程序人生
百***243733 分钟前
Grok-4.1 API进阶实战:Python项目集成、性能优化与异常处理全攻略
python·spring·性能优化
Trust yourself24335 分钟前
魔塔社区下载的大模型如何通过ollama部署到本地
python
码农胖虎-java35 分钟前
【java并发编程】从源码角度彻底理解 ForkJoinPool.commonPool
java·开发语言·python
毕设源码-朱学姐39 分钟前
【开题答辩全过程】以 基于Python淘宝电脑销售数据可视化系为例,包含答辩的问题和答案
python·信息可视化·电脑
三木彤41 分钟前
Scikit-learn 零基础,从安装到实战机器学习模型
python
Ulyanov41 分钟前
高级可视化技术——让PyVista数据展示更专业
开发语言·前端·人工智能·python·tkinter·gui开发
Sagittarius_A*1 小时前
图像滤波:手撕五大经典滤波(均值 / 高斯 / 中值 / 双边 / 导向)【计算机视觉】
图像处理·python·opencv·算法·计算机视觉·均值算法
开开心心_Every1 小时前
一键隐藏窗口到系统托盘:支持任意软件摸鱼
服务器·前端·python·学习·edge·django·powerpoint