为什么列表索引必须是整数,而不是元组?

我有这个简单的程序:
x = {}
x[1,2] = 3
print x
print x[1,2]
它工作正常。拳头
print
产生
{(1,2):3}
,第二个产生
3
。 但在我的“大”程序中,我似乎做了同样的事情,但得到了一个
list indices must be integers, not tuple
错误。此错误消息的含义以及如何解决此问题?     
已邀请:
如果您收到该错误,那么您正在尝试索引列表,而不是字典。 Python列表(如
[1, 2, 3]
)必须使用整数值编制索引。字典是您示例中的字典,可以通过更广泛的不同值进行索引。     
请注意,
x={}
x
定义为字典,而不是列表(可以将任何哈希值作为键,并使用将
d[key1,key2]
转换为
d[(key1,key2)]
的语法糖)。 但是,请参阅numpy,它允许多维数组,如果这真的是你想要的。     
x = {}
这会创建一个字典,而不是列表。
x[1,2] = 3
将值3赋给键​​(1,2)元组。 列表只能由整数索引。也许你用你的词典混淆了[]和{}?     

要回复问题请先登录注册