Python 索引器:列表索引超出范围-创建随机数的2d数组

Python 索引器:列表索引超出范围-创建随机数的2d数组,python,arrays,indexing,Python,Arrays,Indexing,我试图在python中生成随机数的2d数组,我尝试了以下操作,但它返回的索引器列表索引超出范围。我不明白为什么会这样 from random import random n=10 t=5 Prob=[[] for x in xrange(n)] for i in range(n): for j in range(t): Prob[i][j].append(random()) print(Prob) print(Prob[1][1]) 我很感谢你在这方面的帮助 谢谢这里有

我试图在python中生成随机数的2d数组,我尝试了以下操作,但它返回的索引器列表索引超出范围。我不明白为什么会这样

from random import random
n=10
t=5
Prob=[[] for x in xrange(n)]


for i in range(n):
   for j in range(t):
      Prob[i][j].append(random())
print(Prob)
print(Prob[1][1])

我很感谢你在这方面的帮助 谢谢

这里有一个简单的方法:

您可以按如下方式修复代码:

from random import random
n=10
t=5
Prob=[[] for x in range(n)]


for i in range(n):
    for j in range(t):
        Prob[i].append(random())

print(Prob)

创建
Prob
后,应将其打印出来并查看其外观。当
i
j
从0开始时,
Prob[0]
看起来像
[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[/code>。因此,
Prob[0][0]
毫无意义,这是一个空列表,第0个索引中没有项目。感谢您的回复,但是,当您离开并在另一个循环中引用它时,您如何调用它?因为它没有j标识符!为了进一步解释我之前的评论,如果我想在vba或fortan中引用数组中的特定元素,我将执行
Prob(I,j)
,然后如果我想要2d数组的第一个条目,我将执行
Prob(1,1)
在python中的等效项是什么?
from random import random
n=10
t=5
Prob=[[] for x in range(n)]


for i in range(n):
    for j in range(t):
        Prob[i].append(random())

print(Prob)