Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/list/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 为什么列表索引必须是整数而不是元组?_Python_List_Dictionary_Tuples - Fatal编程技术网

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

Python 为什么列表索引必须是整数而不是元组?,python,list,dictionary,tuples,Python,List,Dictionary,Tuples,我有一个简单的程序: x = {} x[1,2] = 3 print x print x[1,2] 它很好用。第一个print生成{(1,2):3},第二个生成3 但是在我的“大”程序中,我似乎也这样做了,但是得到了一个列表,索引必须是整数,而不是元组错误。此错误消息的含义以及我如何解决此问题?如果您遇到此错误,则您正在尝试为列表而不是词典编制索引 Python列表,如[1,2,3],必须用整数值索引。在您的示例中,字典可以由更大范围的不同值进行索引。请注意,x={}将x定义为字典,而不是列表

我有一个简单的程序:

x = {}
x[1,2] = 3
print x
print x[1,2]
它很好用。第一个
print
生成
{(1,2):3}
,第二个生成
3


但是在我的“大”程序中,我似乎也这样做了,但是得到了一个
列表,索引必须是整数,而不是元组
错误。此错误消息的含义以及我如何解决此问题?

如果您遇到此错误,则您正在尝试为列表而不是词典编制索引


Python列表,如
[1,2,3]
,必须用整数值索引。在您的示例中,字典可以由更大范围的不同值进行索引。

请注意,
x={}
x
定义为字典,而不是列表(可以将任何哈希表作为键,并使用语法糖将
d[key1,key2]
转换为
d[(key1,key2)]

但是,请参见,如果您真的想要多维数组,那么它允许多维数组

x = {}
这将创建字典,而不是列表

x[1,2] = 3
将值3指定给一个元组中的键(1,2)

列表只能由整数索引。也许你用口述把[]和{}混在一起了