递归函数(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
相关推荐
巨人张17 分钟前
信息素养Python编程题
开发语言·python
站大爷IP23 分钟前
Python爬虫动态IP代理报错全解析:从问题定位到实战优化
python
hie9889429 分钟前
CentOS环境搭建-快速升级G++版本
linux·python·centos
盛寒32 分钟前
向量空间 线性代数
python·线性代数·机器学习
5171 小时前
Django中序列化与反序列化
后端·python·django
lxiaoj1111 小时前
Python文件操作笔记
笔记·python
Tomorrow'sThinker2 小时前
✍️ Python 批量设置 Word 文档多级字体样式(标题/正文/名称/小节)
python·自动化·word·excel
秋难降2 小时前
Python 知识点详解(三)
python·编程语言
chao_7893 小时前
二分查找篇——寻找旋转排序数组中的最小值【LeetCode】
python·线性代数·算法·leetcode·矩阵
金玉满堂@bj3 小时前
PyCharm 中 Python 解释器的添加选项及作用
ide·python·pycharm