在pygame上开发基于瓷砖的游戏。我正在尝试将文本文件读取为地图,但是,我不断收到一个我不知道如何解决的类型错误
for row, tiles in enumerate(self.map_data):
for col, tile in enumerate(tiles):
if tile == "1":
np = Skull(col, row)
SKULL_LIST.append(np)
for skl in SKULL_LIST:
s = Skull(*skl)
self.all_sprites.add(s)
self.skulls.add(s)
我收到的错误消息:
* 后面的类型对象参数必须是可迭代的,而不是头骨
尝试将行s = Skull(*skl)
替换为行s = skl
。Skull(*skl( 的含义是 Skull(skl[0], skl[1], ...(,它只为映射(如列表(定义。也许 skl 不是映射(特别是,不是列表(?如果你来自 C 或 C++,请注意指针取消引用在 Python 中是隐式的,所以你不需要在变量名称前面加上星号或与号。