全部 -
我今天有一个非常基本的问题......但它一直阻止我有效地继续我的编程,所以我将其发布在这里。
我想创建一个以字典为键的字典。大概我只能传递对字典的引用作为键......只是我不知道如何在Python中做到这一点。这是我想做的事情的简单简化:
def test( dict ):
a={}
b={1:1}
a[ dict ] = b
return a
a = {0:0}
print test( a )
我希望 b 成为 { {0:0} : {1:1} } 形式的字典。
非常感谢任何对此的帮助。
亲切的问候 -
拍拍
最佳答案
字典的键必须是可散列项;不幸的是,字典本身是不可散列的(它们是可变的,这使得它们不具备可散列的资格)。
使用他们的项目列表,转换为排序元组,而不是:
a[tuple(sorted(dct.items()))] = b
可变对象不可散列,因为它们可以就地更改,从而导致以后的键查找失败。例如,如果您从用作键的字典中添加或删除项目,预期结果会是什么?
关于python - 如何在Python中使用字典作为字典的键,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12061108/