RecursionError: maximum recursion depth exceeded while calling a Python object


這種錯誤是遞歸錯誤,知道問題原因就好解決了

#普通函數: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

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM