在写代码时候,遇到了这个问题
我先声明一个列表,然后在列表中添加新值,新的值等于前两项的值相加,也就是斐波那契而数列,但是当我分开写的时候,发现列表索引不在range函数的定义范围内,我以为是我的范围有问题,但是想了半天,感觉没有错误
重点来了 !当我把两步合并成一步的时候,居然好了,我真是。。。。。
错误
n=int(input())
a=[1,1]
for i in range(2,n):
a[i]=a[i-1]+a[i-2]
a.append(a[i])
print(a)
对的
n=int(input())
a=[1,1]
for i in range(2,n):
a.append(a[i-1]+a[i-2])
print(a)
我感觉可能是,当新的值算出来了时,列表中没有能存放值的位置,append函数所以就用不了的原因,欢迎大家来谈论