字典错误'int'对象中的值之和不可迭代

时间:2017-04-29 09:25:57

标签: python dictionary sum

我有多个词典嵌套在列表mydict中,其中一个键'dummy'的值为0或1,我想添加所有这些值。我正确地为密钥编制索引,但我没有得到总和,错误显示为'int' object is not iterable

mydict = [{'name':'John', 'dummy': 1},{'name':'Brad','dummy': 0}]    
for i in range(len(mydict)):
 print sum(mydict[i]['dummy'])

由于我的字典是嵌套的,mydict[i]['dummy']是0或1,type(mydict[0]['dummy'])是整数。

我不知道为什么然后我不能使用上面的循环得到总和。

1 个答案:

答案 0 :(得分:2)

sum()期望一个可迭代的,正如你所说mydict[0]['dummy']是一个整数。

试试这个:

list_of_dicts = [{'name':'John', 'dummy': 1},{'name':'Brad','dummy': 0}]
print sum([element['dummy'] for element in list_of_dicts ] )

这将创建一个包含dict上虚拟值的列表,它们将添加它们。