【发布时间】:2018-09-06 20:28:45
【问题描述】:
我尝试创建一个 2D 动态数组地图,并为地图的每个位置分配一个名为 Point 的对象。当我尝试使用 _create_map() 创建地图时,我得到:
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "map.py", line 97, in _create_map
self.mapa[x][y] = Point()
IndexError: list assignment index out of range
我尝试了不同的解决方案,但仍然不起作用。
class Map():
latitude = 0
longitude = 0
xsize = 0 #in pixel
ysize = 0 #in pixel
mapa = [[],[]]
def __init__(self, longitude, latitude, xs, ys):
self.latitude = longitude
self.longitude = latitude
self.xsize = xs
self.ysize = ys
self.mapa = [[0 for x in range(self.xsize)] for y in range(self.ysize)]
def _create_map(self):
for y in range(self.ysize):
for x in range(self.xsize):
self.mapa[x][y] = Point()
【问题讨论】:
-
您是否尝试在定义数组的行初始化数组?
标签: python arrays object variable-assignment