小编典典

使用Python字典作为键(非嵌套)

python

Python不允许将字典用作其他字典中的键。有使用非嵌套字典作为键的解决方法吗?


阅读 215

收藏
2020-12-20

共1个答案

小编典典

如果您有一本真正不变的字典(尽管我不清楚为什么不只使用成对列表:eg [('content-type', 'text/plain'), ('host', 'example.com')]),那么您可以将其转换dict为:

  1. 成对的元组。您已经在问题中做到了。tuple需要A而不是list因为结果依赖于元素的顺序和不变性。

    >>> tuple(sorted(a.items()))
    
  2. 冻结集。从数学的角度来看,这是一种更合适的方法,因为它只需要不可变元素上的 等式关系dict,而第一种方法除等式外还需要排序关系。

    >>> frozenset(a.items())
    
2020-12-20