我是編程和學習Python的新手。我遇到了遞歸并了解了這段代碼:'''def rec_count(n): print(n) #Base case if n == 0: return 0 rec_count(n-1) # a recursive call print(n)'''在調(diào)用“rec_count(2)”時,我得到以下輸出 2 1 0 1 2我期望輸出為 2-1-0-0-1-2。因為,當 n 變?yōu)?0 時,該函數(shù)將首先打印 0,然后由于滿足 n==0 條件而再次返回 0。但為什么它不打印兩次 0 呢?
1 回答

三國紛爭
TA貢獻1804條經(jīng)驗 獲得超7個贊
你可以寫成如下
def rec_count(n):
print(n)
if n == 0:
print(n)
return 0
rec_count(n-1)
print(n)
稱呼:
rec_count(2)
輸出:
2
1
0
0
1
2
添加回答
舉報
0/150
提交
取消