Chr*_*ris 12 python dictionary list set
我有两个字典列表,我想找到它们之间的区别(即第一个列表中存在但第二个列表中存在的内容,以及第二个列表中存在但第一个列表中不存在的内容).
问题是它是一个字典列表
a = [{'a': '1'}, {'c': '2'}]
b = [{'a': '1'}, {'b': '2'}]
set(a) - set(b)
Run Code Online (Sandbox Code Playgroud)
结果
TypeError: unhashable type: 'dict'
Run Code Online (Sandbox Code Playgroud)
期望的结果:
{'c': '2'}
Run Code Online (Sandbox Code Playgroud)
我该如何做到这一点?
Cor*_*mer 13
您可以使用in
运算符查看它是否在列表中
a = [{'a': '1'}, {'c': '2'}]
b = [{'a': '1'}, {'b': '2'}]
>>> {'a':'1'} in a
True
>>> {'a':'1'} in b
True
>>> [i for i in a if i not in b]
[{'c': '2'}]
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
3238 次 |
最近记录: |