首页 / 知识
Python 递归函数
2023-11-12 13:31:00
递归:函数调用自己本身
递归的核心:1)递归推导式2)递归终止条件
不过虽然递归很方便,但是尽量少用,以防栈溢出,而且会计算效率不高。
'''
例题:有5个人坐在一起,问第五个人多少岁?他说比第4个人大2岁。
问第4个人岁数,他说比第3个人大2岁。
问第三个人,又说比第2人大两岁。
最后问第一个人,他说是10岁。
请问第五个人多少岁?
'''
'n1n2n3n4n5'
#10n1+2n2+2n3+2n4+2
#for循环
defage(n):
age=10
foriinrange(1,n):
age=age+2
print('最后一个人,是%s岁'%age)
###递归
defage2(n):
ifn==1:
return10
else:
returnage2(n-1)+2
##要计算age2(n)的值,程序会先去计算age2(n-1)的值,要计算age2(n-1)的值,程序要计算age2(n-2)的值...直到n==1的时候,程序算出了age2(1)的值,再把值拿到age2(2)里面...以此类推,算出age2(n)
###阶层1!=1*12!=2*13!=3*2*14!=4*3*2*1
#1!2!=2*1!3!=3*2!4!=4*3!
#推导式:n!=n*(n-1)!
#终止条件:n==1return1
defjie(n):
ifn==1:
return1
else:
returnjie(n-1)*n
以上内容为大家介绍了Python递归函数,希望对大家有所帮助,如果想要了解更多Python相关知识,请关注我们
最新内容
相关内容
python的十个第三方库
python的十个第三方库,数据,网络,服务,时间,代码,管理,标准,实时,分析,等级,1.BeautifulSoupBeautifulSoup是一个可以从HTML,XML进行提取文件Python 条件对象
Python 条件对象,状态,培训,对象,条件,线程,方法,底层,发生,场景,典型,条件对象总是与某种类型的锁对象相关联,锁对象可以通过传入获得,或者在Python基础之numpy中的常见函数有
Python基础之numpy中的常见函数有哪些,数组,基础,培训,元素,方向,矩阵,函数,乘积,维度,索引,有些Python小白对numpy中的常见函数不太了解,今天python max函数中key是如何用的?
python max函数中key是如何用的?,工资,培训,函数,句子,单词,绝对值,参数,字典,列表,元素,在max函数使用的过程中,经常会有到key。在python的mapython可以编写win程序吗?
python可以编写win程序吗?,培训,程序,文件,内容,文件夹,模块,命令,实际,下面,根据,python可以编写win程序。win程序的格式是exe,下面我们就来python的三角函数在哪?
python的三角函数在哪?,标准,培训,函数,反函数,方法,下面,以上,更多,内容,python中的三角函数在python的标准库math中,math已经包含在你的标python中函数怎么表示?
python中函数怎么表示?,名称,标准,培训,代码,函数,圆括号,字符串,表达式,选择性,自变量,python中函数定义规则:·函数代码块以def关键词开头,后python如何让程序暂停执行和继续执
python如何让程序暂停执行和继续执行?,暂停,培训,程序,继续,空格键,函数,以上,操作,方法,更多,python让程序继续执行的方法:一、使用到的函数python有函数重载吗?
python有函数重载吗?,情况,代码,设计,名字,培训,函数,参数,功能,类型,两个,python中没有函数重载。为了考虑为什么python不提供函数重载,首先python map()函数怎么用?
python map()函数怎么用?,培训,函数,序列,列表,参数,元素,示例,字符串,语法,例子,pythonmap()会根据提供的函数对指定序列做映射。第一个参数python常用函数包有哪些?
python常用函数包有哪些?,项目,数据,标准,系统,基础,代码,地址,分析,检测,网站,一些python常用函数包:1、Urllib3Urllib3是一个Python的HTTP客python函数里面形参和实参一样吗?
python函数里面形参和实参一样吗?,培训,函数,参数,里面,变量,实际,形式,全称,示例,后面,python函数里面形参和实参不一样。形参全称是形式参