我想从两个不同的列表中过滤出相同的字典元素,示例如下:
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}...]
将显示相同的字典元素。
答案 0 :(得分:1)
您只需要遍历一个列表,并检查第一个列表的元素是否在第二个列表中
print([item for item in a if item in b])
输出将为
[{'name': 'pan', 'sex': 'woman', 'age': 23}]