Python 类型错误,因为列表索引必须是整数或切片,而不是元组
我已经尽了最大的努力来寻找解决数组和元组问题的方法,但是我找不到任何对我有帮助的方法。这就是问题所在: TypeError:列表索引必须是整数或切片,而不是元组 我正在创建一个基于文本的游戏,其中我使用数组中的数组制作地图:Python 类型错误,因为列表索引必须是整数或切片,而不是元组,python,arrays,typeerror,Python,Arrays,Typeerror,我已经尽了最大的努力来寻找解决数组和元组问题的方法,但是我找不到任何对我有帮助的方法。这就是问题所在: TypeError:列表索引必须是整数或切片,而不是元组 我正在创建一个基于文本的游戏,其中我使用数组中的数组制作地图: maps = [ [ #Room 1 ['0','0','0','0','0'], ['0','x','.','x','0'], ['0','x','x','x','0'], ['0','.','x','.','0'], ['
maps = [
[
#Room 1
['0','0','0','0','0'],
['0','x','.','x','0'],
['0','x','x','x','0'],
['0','.','x','.','0'],
['0','0','0','0','0']
]
[
#Room 2
['0','0','0','0','0'],
['0','.','x','.','0'],
['0','x','x','x','0'],
['0','.','.','x','0'],
['0','0','0','0','0']
]
]
不幸的是,最后一个数组给出了TypeError:
TypeError:列表索引必须是整数或切片,而不是元组
代码如下所示:
['0','0','0','0','0']
我做错了什么?您在两个子数组
之间漏掉了一个逗号,这导致Python错误地理解为您将第一个数组与第二个数组索引
我很确定这就是你想要做的:
maps = [
[
#Room 1
['0','0','0','0','0'],
['0','x','.','x','0'],
['0','x','x','x','0'],
['0','.','x','.','0'],
['0','0','0','0','0']
],
[
#Room 2
['0','0','0','0','0'],
['0','.','x','.','0'],
['0','x','x','x','0'],
['0','.','.','x','0'],
['0','0','0','0','0']
]
]
此外,您还为问题添加了标签,但您在这里定义的是一个列表
。如果需要numpy数组
,可以这样定义:
maps = np.array([
[
#Room 1
['0','0','0','0','0'],
['0','x','.','x','0'],
['0','x','x','x','0'],
['0','.','x','.','0'],
['0','0','0','0','0']
],
[
#Room 2
['0','0','0','0','0'],
['0','.','x','.','0'],
['0','x','x','x','0'],
['0','.','.','x','0'],
['0','0','0','0','0']
]
])
两个列表之间需要一个逗号,请显示列表的索引方式。你还漏掉了一个逗号…哦,谢谢你,Wondercricket@SimSon逗号是导致错误的原因。由于两个列表之间没有逗号分隔,Python试图用第二个列表访问第一个列表的索引