【发布时间】:2017-06-19 09:56:32
【问题描述】:
用这个把我的头发拉出来。
我有一个字典列表,每个唯一条目没有唯一的主 ID 键(字典是动态构建的):
dicts = [{'firstname': 'john', 'lastname': 'doe', 'code': 'crumpets'},
{'firstname': 'john', 'lastname': 'roe', 'code': 'roe'},
{'firstname': 'john', 'lastname': 'doe', 'code': 'crumpets'},
{'firstname': 'thom', 'lastname': 'doe', 'code': 'crumpets'},
]
如何过滤掉这样的字典列表,其中列表中的任何重复 {} 都被删除了?所以我需要检查所有三个字典键是否都与列表中的另一个匹配......然后如果满足该检查,则从dict 中丢弃它。
因此,对于我上面的示例,需要删除第一个和第三个“条目”,因为它们是重复的。
【问题讨论】:
-
所以从有重复的那一刻起,你想删除所有元素吗?
-
你能显示你在等待什么吗?
-
将字典映射到元组对,创建一组(这使得它们独一无二)并将它们映射回字典
-
否 - 只需删除重复项。因此,如果列表中的一个字典等于另一个 - 删除其中之一(但不能同时删除)。
标签: python list sorting dictionary