如何检查两个词典的键是否相同

时间:2013-08-14 08:34:15

标签: python dictionary key

我正在尝试编写一个python函数来比较两个词典中的键。我这样做是为了检查字典中关于特定json的键是否永远不会改变并保持一致。

我将在python编码中存储一个字典,而另一个我将执行GET请求以获取该字典。

有人可以帮我解决这个问题吗?

2 个答案:

答案 0 :(得分:4)

你可以使用dict.viewkeys它返回一个类似于view对象的集合:

>>> {'a':4, 'b':2}.viewkeys() == {'a':0, 'b':1}.viewkeys()
True

你不能依赖py2.x中的dict.keys,因为它返回一个列表,键的顺序可以是任意的。

>>> ['a', 'b', 'c'] == ['a', 'c', 'b']    #same keys, but not equal
False
>>> set(['a', 'b', 'c']) == set(['a', 'c', 'b']) #sets compare fine
True

在py3.x上使用dict.keys()

答案 1 :(得分:0)

像这样:

{'a':4, 'b':2}.keys() == {'a':0, 'b':1}.keys()