所以,想象一下我有这样的口述:
dict = {
"100311929821626368" : {
"battles" : 2,
"loses" : 0,
"maxstamina" : 50,
"news" : True,
"stamina" : 50,
"weeb" : "Chuey",
"wins" : 0
},
"100802430467325952" : {
"battles" : 4,
"loses" : 0,
"maxstamina" : 50,
"news" : True,
"stamina" : 45,
"weeb" : "Red Haired Bastard",
"wins" : 0
},
"101970309296447488" : {
"battles" : 1,
"loses" : 0,
"maxstamina" : 50,
"news" : True,
"stamina" : 45,
"weeb" : "Niusky",
"wins" : 1
}
}
我的代码是:
wow = 0
for id in dict:
for i in dict[id]["battles"]:
wow += i
问题是,我不知道如何一次添加所有的战斗int。因为我得到这个错误:
TypeError: 'int' object is not iterable
我该怎么解决它,让它成为字典里所有的战斗!你知道吗
这是这个问题的重复:Iterating over dictionaries using 'for' loops
键只是一个变量名。你知道吗
将简单地循环字典中的键,而不是键和值。要循环键和值,可以使用以下命令:
对于Python 2.x:
对于Python 3.x:
问题是
dict[id]['battles']
是int类型的对象,所以这就是得到错误TypeError: 'int' object is not iterable
的原因。你知道吗您可以通过以下方式解决:
或者,您甚至可以通过使用Python理解来简化代码:
这就是你想要的吗?你知道吗
必要时解释:
dict[id]["battles"]
已经返回int值。你试图迭代那个int,这毫无意义。你知道吗相关问题 更多 >
编程相关推荐