0
TypeError: sequence() missing 1 required positional argument: 'n', sequence()
顯然,當使用sequence(n-1) + sequence(n-2)
時,n沒有使用該函數的值,我該如何解決它?缺少1個需要的位置參數 - Python
memo = {0:0,1:1}
def sequence(type, n):
if type == "fibonacci":
if not n in memo:
memo[n] = sequence(n-1) + sequence(n-2)
else:
return memo[n]
您需要將類型參數傳入您的遞歸調用,即'備忘錄[n] =序列(類型,n-1)+序列(類型,n-2)' – Matt 2015-04-01 16:52:14
作爲一個附註,不要使用'type'作爲變量名稱,因爲已經有一個內置的名稱 – inspectorG4dget 2015-04-01 16:53:44
'如果n不在備忘錄中:'也應該讓事情更好 – Pynchia 2015-04-01 16:55:01