RecursionError: maximum recursion depth exceeded while calling a Python object

你说的曾经没有我的故事 提交于 2020-11-29 07:05:23

这种错误是递归错误,知道问题原因就好解决了

#普通函数:def func():pass

#匿名函数:lambda 参数:返回结果

#递归函数:特殊的普通函数

#特点:

#1、递归函数一定要设定一个终点
#2、递归函数通常会有一个入口

 

#案例

def summ(n):
    print(n*n)
    summ(n+1)

summ(i)

上面是一个典型的有入口没终点的案例,运行程序就会一直跑下去,当跑到一定程度就会报递归错误。

RecursionError: maximum recursion depth exceeded while calling a Python object

 

成功的案例

def summ(n):
    # print(n*n)
    if n==0:
        return 'ok'
    else:
        print(f"{n}*{n}={n*n}")
        return summ(n-1)

print(summ(9))
9*9=81
8*8=64
7*7=49
6*6=36
5*5=25
4*4=16
3*3=9
2*2=4
1*1=1
ok

 

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!