在列表中有多个字典,如何历遍多个字典的内容,一直报错

img

在列表里有n个字典时,我用for循环想把所有内容都历遍出来再转化成多个float的函数,最后求和和平均。但是在用for时一直报错怎么回事啊,是格式哪里错了吗


lst = [{'数学': 1, '语文':2, '英语': 2,},
       {'数学': 2, '语文':45, '英语': 2,}, 
       {'数学': 1, '语文':7, '英语': 52,},
       {'数学': 5, '语文':6, '英语': 15,}]
s = 0
for i in range(len(lst)):
    a = lst[i]
    s = s + sum(a.values())
    
l = s / 5
print(f"总{s}")
print(f"平{l}")
'''--result
总140
平28.0

'''

lst = [{'数学':1,'语文':2,'英语':2,},
        {'数学':2,'语文':45,'英语':2,},
        {'数学':1,'语文':7,'英语':52,},
        {'数学':5,'语文':6,'英语':15,},
        ]
for i in lst:
    
    s = sum([float(v) for k,v in i.items()])
    l = s / 3
    print("学生的总成绩是:%2f" % s)
    print(f"学生的平均成绩:{l}")