Python不允许将字典用作其他字典中的键。有使用非嵌套字典作为键的解决方法吗?
如果您有一本真正不变的字典(尽管我不清楚为什么不只使用成对列表:eg [('content-type', 'text/plain'), ('host', 'example.com')]),那么您可以将其转换dict为:
[('content-type', 'text/plain'), ('host', 'example.com')]
dict
成对的元组。您已经在问题中做到了。tuple需要A而不是list因为结果依赖于元素的顺序和不变性。
tuple
list
>>> tuple(sorted(a.items()))
冻结集。从数学的角度来看,这是一种更合适的方法,因为它只需要不可变元素上的 等式关系dict,而第一种方法除等式外还需要排序关系。
>>> frozenset(a.items())