我试图初始化列表,并不断收到索引超出范围:Python的错误:列表分配索引超出范围
self.nodes = [[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[]]
当我运行这段代码:
for i in range(self.rows):
for j in range(self.columns):
if self.GRID[i][j] == 0:
self.walkable.append(Node(j * self.cellSize, i * self.cellSize))
self.isWalkable = True
if self.GRID[i][j] == 1:
self.unwalkable.append(Node(j * self.cellSize, i * self.cellSize))
self.isWalkable = False
if self.GRID[i][j] == 2:
self.player = Node(j * self.cellSize, i * self.cellSize)
self.isWalkable = True
if self.GRID[i][j] == 3:
self.npc = Node(j * self.cellSize, i * self.cellSize)
self.isWalkable = True
self.nodes[i][j] = Node(j, i)
self.nodes[i][j].setWalkable(self.isWalkable)
错误我得到的是:
self.nodes[i][j] = Node(j, i)
IndexError: list assignment index out of range
不可能告诉你为什么除非你显示设置self.columns和self.rows的代码,因为其中的一个超出了数组边界。 –