全国旗舰校区

不同学习城市 同样授课品质

北京

深圳

上海

广州

郑州

大连

武汉

成都

西安

杭州

青岛

重庆

长沙

哈尔滨

南京

太原

沈阳

合肥

贵阳

济南

下一个校区
就在你家门口
+
当前位置:首页  >  技术干货  >  详情

Python 递归函数

来源:千锋教育
发布人:xqq
2023-11-05

推荐

在线提问>>

递归:函数调用自己本身

递归的核心:1)递归推导式2)递归终止条件

不过虽然递归很方便,但是尽量少用,以防栈溢出,而且会计算效率不高。

'''

例题:有5个人坐在一起,问第五个人多少岁?他说比第4个人大2岁。

问第4个人岁数,他说比第3个人大2岁。

问第三个人,又说比第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相关知识,请关注IT培训机构:千锋教育。

相关文章

python中的filter函数功能是什么?

python delattr函数如何使用?

python中pdb模块怎么用?

Python如何截图保存?

python​中缺少module怎么办?

开班信息 更多>>

课程名称
全部学科
咨询

HTML5大前端

Java分布式开发

Python数据分析

Linux运维+云计算

全栈软件测试

大数据+数据智能

智能物联网+嵌入式

网络安全

全链路UI/UE设计

Unity游戏开发

新媒体短视频直播电商

影视剪辑包装

游戏原画

    在线咨询 免费试学 教程领取