我是Python新手,正在學習如何通過從項目euler進行練習來實現它。問題2的重點是針對我已經創造了這個遞歸函數的斐波那契序列:Python函數不返回
def CalcFb(start,end):
if (end<=4000000):
CalcFb(end,start+end)
else:
print "Returning:",end
return end
print "Answer: {0}".format(CalcFb(start,start+1))
當我運行程序我得到以下輸出:
Returning: 5702887
Answer: None
我打電話與功能:
start=1
我不明白爲什麼被印有「無」應該印有5702887.可有人請幫助我明白這是爲什麼happeneing?
感謝 丹
@Lafada您對該問題所做的編輯是*有害的*:您修正了代碼中損壞的部分,使得O.P.發佈的輸出不會實際計算問題中的代碼。這可能會讓幾個人願意幫助浪費幾分鐘時間,試圖弄清楚發生了什麼。請在編輯時小心。代碼可以被打破 - 這就是爲什麼問題被放置。 – jsbueno
當然,下次我會確保它不會有害:) – Nilesh