📜  Python – 在某些键上比较字典(1)

📅  最后修改于: 2023-12-03 15:04:12.096000             🧑  作者: Mango

Python – 在某些键上比较字典

在Python中,字典是一种非常有用的数据结构,用于存储键值对。有时候,我们需要比较两个字典,但不是在所有键上进行比较。本文介绍如何在Python中比较两个字典的某些键。

比较两个字典的某些键

我们可以使用Python的列表推导式和字典推导式来快速比较两个字典的某些键。

首先,定义两个字典,如下所示:

dict1 = {'a': 1, 'b': 2, 'c': 3, 'd': 4}
dict2 = {'b': 2, 'd': 4, 'e': 5, 'f': 6}

接下来,我们可以使用列表推导式来创建一个新的字典,该字典只包含我们想要比较的键:

keys_to_compare = ['b', 'd']
compared_dict = {k: dict1[k] for k in keys_to_compare if k in dict1} == {k: dict2[k] for k in keys_to_compare if k in dict2}

此代码创建了一个keys_to_compare列表,其中包含我们想要比较的键。然后,我们使用字典推导式分别从dict1dict2中创建了两个新字典,这些新字典只包含keys_to_compare列表中的键。

最后,我们比较了这两个新字典,以检查它们是否具有相同的值。如果相同,compared_dict将是True,否则它将是False

示例代码
dict1 = {'a': 1, 'b': 2, 'c': 3, 'd': 4}
dict2 = {'b': 2, 'd': 4, 'e': 5, 'f': 6}
keys_to_compare = ['b', 'd']
compared_dict = {k: dict1[k] for k in keys_to_compare if k in dict1} == {k: dict2[k] for k in keys_to_compare if k in dict2}
print(compared_dict)

输出结果:

True

这表明,dict1dict2'b''d'键上具有相同的值。

结论

在Python中比较两个字典的某些键非常简单。我们可以使用列表推导式和字典推导式来创建新的字典,然后使用相等运算符来比较它们。