比较Python中的两个词典列表

时间:2016-09-16 15:58:50

标签: python list dictionary

我想创建一个函数,通过查看它们的键来比较python中的两个字典列表。当列表A包含一个字典,该字典的条目与列表B中的字典中的条目具有相同的键时,该函数应返回True。

以下是列表A和B的示例:

followers

在此示例中,函数应返回True,因为key1是匹配的。

提前致谢。

2 个答案:

答案 0 :(得分:2)

首先你必须从字典列表中取出密钥,然后进行比较。

keysA = [k for x in listA for k in x.keys()]
keysB = [k for x in listB for k in x.keys()]

any(k in keysB for k in keysA)

答案 1 :(得分:0)

这是你在找什么?

def cmp_dict(a, b):
    return any(frozenset(c) & frozenset(d) for c, d in zip(a, b))

以下是其用法的演示:

>>> listA = [{'key1':'value1'}, {'key2':'value2'}]
>>> listB = [{'key1':'value3'}, {'key3':'value4'}]
>>> cmp_dict(listA, listB)
True
>>>