我如何使用循环求和模式来计算和打印这个字典列表中所有游戏的总分?不允许使用Sum函数,也不允许导入函数:
games = [
{"Name": "UD", "Score": 27, "Away?": False},
{"Name": "Clemson", "Score": 14, "Away?": True},
{"Name": "Pitt", "Score": 32, "Away?": True},
]
我想有某种方法可以通过for循环访问它?
for i in games: ......
for i in games["Score"]:
解析
时得到SyntaxError: unexpected EOF我试着:
sum_hold = sum(d.get("Score", 0) for d in games)
但是我不允许对赋值
使用sum函数您有一个可以迭代的字典列表。一旦你获得了一款游戏,得分就很容易获得。
games = [
{"Name": "UD", "Score": 27, "Away?": False},
{"Name": "Clemson", "Score": 14, "Away?": True},
{"Name": "Pitt", "Score": 32, "Away?": True},
]
total = 0
for game in games:
total += game.get("Score", 0)
print(total)
您可以这样写(与Tim Roberts在评论中提到的方法相同):
games = [
{"Name": "UD", "Score": 27, "Away?": False},
{"Name": "Clemson", "Score": 14, "Away?": True},
{"Name": "Pitt", "Score": 32, "Away?": True},]
sum_hold = 0
for i in games:
sum_hold += i['Score']
print(sum_hold)