Indexerror:列表索引超出范围/ numpy

时间:2015-01-21 13:13:27

标签: python python-3.x numpy

我是python的新手。我收到一条错误,指出Indexerror列表索引超出范围。请帮助我。提前致谢 。 编辑1

x = np.array([10,0])
Phi = np.array([[ 1.  ,  0.01],
            [ 0.  ,  1.  ]])
Gamma = np.array([[ 0.0001048 ],
              [ 0.02096094]])
Z = np.array([[ 0.0001048 ],
          [ 0.02096094]])
wd = 0
u_new = 0
x1d = 0
x2d = 0
xd = [[0 for col in range(len(x))] for row in range(1000)]
xd[0][0] = 10
xd[1][0] = 0
k = 10
DistPeriodNo1 = 500
FirstPeriod = 1
k=k+1 #Update PeriodNo(so PeriodNo is now equal to No. of current period)
if (k == 100):  #If maximum value of PeriodNo is reached,
    k = 11  #set it to 1
    DistPeriodNo1 = random.randint(11,99) 

if (FirstPeriod == 0):  

    if (k == DistPeriodNo1):    
        wd = random.randint(-1,1)
    else:
        wd = 0
    xd[0][k] = Phi*xd[0][k-1] - Gamma*u_new + Z*wd
    # >>indexerror list index out of range
    xd[1][k] = Phi*xd[1][k-1] - Gamma*u_new + Z*wd
    x1d = xd[0][k]
    x2d = xd[1][k]

1 个答案:

答案 0 :(得分:0)

在关于追溯(堆栈跟踪)的评论中回答您的问题:运行以下

a = [1,2,3]
b = [True, False]
print(a[2])
print(b[2])

产生一个答案和一个追溯。

>>> 
3
Traceback (most recent call last):
  File "C:\Programs\python34\tem.py", line 4, in <module>
    print(b[2])
IndexError: list index out of range

回溯显示哪些行和哪些代码引发了错误。人们要求你复制最后4行并将它们粘贴到你的问题中(通过编辑)。