Python3将2个列表与字典元素进行比较

时间:2019-06-26 06:50:18

标签: python python-3.x

我想从两个不同的列表中过滤出相同的字典元素,示例如下:

a = [{'name':'Cheng','sex':'man','age':18},{'name':'Huang','sex':'man','age':19},{'name':'pan','sex':'woman','age':23},{'name':'Ying','sex':'woman','age':21}...]

b = [{'name':'Cheng','sex':'man','age':19},{'name':'pan','sex':'woman','age':23},{'name':'Huang','sex':'woman','age':20},{'name':'Ying','sex':'man','age':23}...]

列表a和b有很多字典元素。

我寻求一种有效的方法来比较字典元素中具有相同键的不同值,预期结果应如下所示:

[{'name':'pan','sex':'woman','age':23}...]

将显示相同的字典元素。

1 个答案:

答案 0 :(得分:1)

您只需要遍历一个列表,并检查第一个列表的元素是否在第二个列表中

print([item for item in a if item in b])

输出将为

[{'name': 'pan', 'sex': 'woman', 'age': 23}]