0
l = [{'name': 'abc', 'marks': 50}, {'name': 'abc', 'marks': 50}]
我想统一字典结果。如何从多个元素中创建单个元素?
result = [{'name': 'abc', 'marks': 50}]
l = [{'name': 'abc', 'marks': 50}, {'name': 'abc', 'marks': 50}]
我想统一字典结果。如何从多个元素中创建单个元素?
result = [{'name': 'abc', 'marks': 50}]
通常情况下,做出list
只有独特的元素最简单的方法是将其转换为一个set
,假设:
但是,dict
不可散列,所以在你的情况下,它可能是最简单的是手:
>>> l = [{'name': 'abc', 'marks': 50}, {'name': 'abc', 'marks': 50}]
>>> l2 = []
>>> for d in l:
... if not d in l2:
... l2.append(d)
...
>>> l2
[{'name': 'abc', 'marks': 50}]
上面的代码假设你想“uniquify”基于精确匹配dict
项目。例如,如果您有两个具有相同name
但不同marks
的项目,则它们都将被添加到列表中。
那么,你以前问过不是这样吗? http://stackoverflow.com/questions/3665414/how-to-uniqufy-the-tuple-element – dmitko 2010-09-14 08:17:07