python-递归

递归:函数自己内部调用自己 

能递归的次数-递归深度

i=1
def store():
    global i
    print(i)
    i+=1
    store()

store()

打印出996后就报错了:RecursionError: maximum recursion depth exceeded while calling a Python object   ------(RecursionError:调用Python对象时超过了最大递归深度)

也就是说默认递归次数是1000次左右

这个值程序员可以修改

复制代码
import sys
sys.setrecursionlimit(2000) #修改递归深度

i=1
def store():
    global i
    print(i)
    i+=1
    store()

store()
复制代码

打印出1996后报错,说明递归次数修改成功

最高递归次数,跟电脑配置有关

 

递归的有点:让代码变的简单

递归的缺点:占内存,超过系统默认的1000深度的,不建议使用递归

 

 

实例一:求年龄

def age(n):
    if n==4 :
        return 40
    elif n>0 and n<4:
        return age(n+1)+2

print(age(1))

 

 

 

 

 

 

 

 

 

posted @   天子骄龙  阅读(6)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 别再用vector<bool>了!Google高级工程师:这可能是STL最大的设计失误
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 单元测试从入门到精通
· 上周热点回顾(3.3-3.9)
历史上的今天:
2023-12-05 汇编-and逻辑与
2023-12-05 汇编-or逻辑或
2023-12-05 汇编-xor异或
2023-12-05 汇编-.if和.while和.repeat注意事项
2021-12-05 qt5-右键菜单
2019-12-05 python---win32gui、win32con、win32api:winAPI操作
点击右上角即可分享
微信分享提示

目录导航