這個程序顯示正確的輸出,除了輸入n = 0。pythonacci序列程序在python中工作正常,除了輸入0
def fib(n):
f=list()
i=0
while(i<=n):
f.append(i)
i+=1
f[0]=0
f[1]=1
for i in range(2,n+1):
f[i]=f[i-1]+f[i-2]
i+=1
return f[n]
n=int(input())
print(fib(n))
當我給輸入n = 0時,它顯示以下錯誤:
Traceback (most recent call last):
File "fib.py", line 16, in <module>
print(fib(n))
File "fib.py", line 10, in fib
f[1]=1
IndexError: list assignment index out of range
當n = 0所有的x值斐波納契你沒有在f 1的位置值,但你的句子正在努力讀書_f在那個位置TE值[1] = 1_。可能你對字典感到困惑。順便說一句,嘗試在你的Python代碼中遵循PEP8。 – Hamlett