递归函数python简单实例详解
来源:小码王信奥 时间:2023-11-02 浏览量:72
所有的编程语言都有递归函数,递归指的是一个过程:函数不断引用自身,直到引用的对象不满足条件为结束。可以直接理解为:递归就是在函数内部调用自己的函数被称之为递归
函数的递归调用原理
实际上递归函数是在栈内存上递归执行的,每次递归执行一次就会耗费一些栈内存。栈内存的大小是限制递归深度的重要因素
递归函数的优点
定义简单,逻辑清晰。理论上,所有的递归函数都可以写成循环的方式,但循环的逻辑不如递归清晰。
递归函数的缺点
使用递归方式需要函数做大量的压栈和弹栈操作,由于压栈和弹栈涉及函数执行上下文(context)的现场保存和现场恢复,所以程序的运行速度比不用递归实现要慢。
此外,大量的堆栈操作消耗的内存资源要比非递归调用多。而且,过深的递归调用还可能会导致堆栈溢出。如果操作不慎,还容易出现死循环。因此读者编写代码时需要多加注意,一定要设置递归操作的终止条件。
Python递归函数实例详解
业务需求:遍历arr列表,打印所有的值用递归函数实现
arr=[1,[2,3]]
def digui(arr):
if type(arr)==list:
for i in arr:
if type(i)==list:
digui(i)
else:
print(i)
digui(arr)
代码中,判断值如果还是列表就调用自身实现循环判断、打印
![icon](/style/img/info/infoIcon.png)
下一篇:python定义变量命名规则
![logo](/style/img/info/xmwLogo.png)
你也想0元体验小码王信奥集训营吗?
填写信息免费预约
免责申明:以上展示内容来源于合作媒体、企业机构、网友提供或网络收集整理,版权争议与本站无关,文章涉及见解与观点不代表小码王官方立场,请读者仅做参考。本文标题:递归函数python简单实例详解,本文链接:http://www.xiaomawang.vip/help/20953.html;欢迎转载,转载请说明出处。若您认为本文侵犯了您的版权信息,或您发现该内容有任何涉及有违公德、触犯法律等违法信息,请您立即通过邮件(邮箱号:
hzlixy@xiaoma.cn)联系我们及时修正或删除。
![icon](/style/img/info/icon1.png)
免费预约体验课
![icon](/style/img/info/icon2.png)
在线预约
![img](/style/img/info/freeOrder.png)
微信扫一扫,关注微信公众号
在线咨询体验课
![img](/style/img/about/weixin1.png)
微信扫一扫
微信咨询
微信咨询
![img](/style/img/qrcode.png)
微信扫一扫
信奥全知道
信奥全知道
![icon](/style/img/info/icon3.png)
课程服务
![img](/style/img/info/service1.png)
升学规则
![img](/style/img/info/service2.png)
科技特长生辅导
![img](/style/img/info/service3.png)
招生简章
![img](/style/img/info/service4.png)
赛事辅导