Python 如何访问字典中的二维值列表?

Python 如何访问字典中的二维值列表?,python,arrays,dictionary,Python,Arrays,Dictionary,我有一个dict(RefGenomesDict),其中键是登录号(string),值是基因属性的二维列表。当我检查RefGenomesDict以查看它是否包含预期的无注释二维列表时,使用 for key in RefGenomesDict.keys(): print(str(key)+ "\t" + str(RefGenomesDict[key])) 将为每个键打印预期内容 当我尝试使用 InfoList = copy.deepcopy(RefGenomesDict[AccNum])

我有一个
dict
RefGenomesDict
),其中键是登录号(
string
),值是基因属性的二维列表。当我检查RefGenomesDict以查看它是否包含预期的无注释二维列表时,使用

for key in RefGenomesDict.keys():
    print(str(key)+ "\t" + str(RefGenomesDict[key]))
将为每个键打印预期内容

当我尝试使用

InfoList = copy.deepcopy(RefGenomesDict[AccNum])
我得到了错误

TypeError: unhashable type: 'list'.

如何访问二维列表中的值?

Python字典通常不支持可变对象作为键,因为它们不可散列。可变类型包括,
dict
set
list


如果您试图对
InfoList
进行更改,但又不想在原始文档中反映,则可以这样做。如果不是这样,您可能希望放弃调用
deepcopy

Python字典通常不支持可变对象作为键,因为它们不可散列。可变类型包括,
dict
set
list


如果您试图对
InfoList
进行更改,但又不想在原始文档中反映,则可以这样做。如果不是这种情况,您可能希望放弃调用
deepcopy

AccNum
是一个列表。那么,使用int,或者其他任何键?你能给我们看看你的字典吗?为什么要双重查找?您可以对somedict.items()中的key,value执行
(python 2中的iteritems)。问题在于脚本前面的一个愚蠢的输入错误。很抱歉占用您的时间。
AccNum
是一个列表。那么,使用int,或者其他任何键?你能给我们看看你的字典吗?为什么要双重查找?您可以对somedict.items()中的key,value执行
(python 2中的iteritems)。问题在于脚本前面的一个愚蠢的输入错误。我很抱歉占用了你们的时间。
In [386]: {[1, 2] : 123}
---------------------------------------------------------------------------
TypeError                                 Traceback (most recent call last)
<ipython-input-386-3ba6ff881f9f> in <module>()
----> 1 {[1, 2] : 123}

TypeError: unhashable type: 'list'
for key in RefGenomesDict:
    InfoList = copy.deepcopy(RefGenomesDict[key])