Python 打印列表中相同值的总和
我使用for循环遍历列表,如下所示:Python 打印列表中相同值的总和,python,python-3.x,Python,Python 3.x,我使用for循环遍历列表,如下所示: for c in classes: print(c.get(‘class’), c.get(‘money’,{})[0].get(‘totalspent’)) 我得到的结果是: classs1 10 class2 20 class3 10 class2 30 class3 20 我正试图找到一种方法来获得类似于: class1 10 class2 50 class3 30 我该怎么做?我试着编一本字典,把所有的东西都放
for c in classes:
print(c.get(‘class’), c.get(‘money’,{})[0].get(‘totalspent’))
我得到的结果是:
classs1 10
class2 20
class3 10
class2 30
class3 20
我正试图找到一种方法来获得类似于:
class1 10
class2 50
class3 30
我该怎么做?我试着编一本字典,把所有的东西都放在for循环下,但总是出错 带有:
output
将是一个字典,其中键是类的名称,值是总数。提供一个“classes”对象的示例会很有帮助,可能是一个字典列表或其他什么?非常感谢!!
from collections import defaultdict
output = defaultdict(int)
for c in classes:
output[c.get('class')] += c.get('money', {})[0].get('totalspent', 0)
# ^ Note the 0 as default
print(output)