擅长:python、mysql、java
<p>一种简单的方法是创建一个新的dict对象,其中包含电子邮件地址作为它的(唯一)键,然后遍历列表,如果元素已经在列表中,则增加分数计数;如果电子邮件地址还没有在dict中,则创建带有分数计数的dict条目</p>
<pre><code>scores_raw = [{'E-mail': 'tim@gmail.com', 'score': 10},
{'E-mail': 'tim@gmail.com', 'score': 10},
{'E-mail': 'tim@gmail.com', 'score': 10},
{'E-mail': 'tim@gmail.com', 'score': 10},
{'E-mail': 'hihallo@gmail.com', 'score': 5},
{'E-mail': 'noreply@com', 'score': 5},
{'E-mail': 'marketing@nl', 'score': 5}]
scores_unique = {}
for item in scores_raw:
if item['E-mail'] not in scores_unique:
scores_unique.update({item['E-mail']: item['score']})
else:
scores_unique[item['E-mail']] += item['score']
print (scores_unique)
</code></pre>
<p>输出:<code>{'tim@gmail.com': 40, 'hihallo@gmail.com': 5, 'noreply@com': 5, 'marketing@nl': 5}</code></p>