嵌套python字典中的项总和

嵌套python字典中的项总和,python,dictionary,for-loop,nested,Python,Dictionary,For Loop,Nested,我有一本嵌套字典 mydict = { 'school1': { 'grades1': [78, 96, 80], 'grades2' : [81, 86, 90]}, 'school2': { 'grades3' : [60, 65, 70], 'grades4' : [67, 98, 100]} } 我想找到我有的“等级”子词典的总和,但我还不能完全弄清楚。我不想硬编码 sum(mydict['school1']['grades1']) 等等 “

我有一本嵌套字典

mydict = {
 'school1': {
    'grades1': [78, 96, 80], 
    'grades2' : [81, 86, 90]}, 
 'school2': {
    'grades3' : [60, 65, 70],
    'grades4' : [67, 98, 100]}
} 
我想找到我有的“等级”子词典的总和,但我还不能完全弄清楚。我不想硬编码

sum(mydict['school1']['grades1'])
等等

“对于my_dict2中的学校:

print(schools)
for grades in my_dict2[schools]:
    print(grades)
    for values in my_dict2[schools][grades]:
        print(sum(values))`
我得到了这些值,但是试图在这里取这些值的和会导致TypeError:“float”对象是不可编辑的

非常感谢任何帮助!
谢谢

在python中循环使用字典的最简单方法是使用
dict.values()
dict.keys()
,或其组合表
dict.items()
。因此,纯粹的
for循环
实现可能如下所示:

sumGrades = []
for school in mydict.values():
    sumGrades.append(0)
    for grade in school.values():
        sumGrades[-1] += sum(grade)
并转换为列表理解:

sumGrades = [sum(sum(g) for g in s.values()) for s in mydict.values()]

你期望什么样的产出?你也可以发布你的尝试吗?我想找到分数的总和,然后用不同的分数和相应的总和(或平均数)创建一个新字典(或用分数总和交换分数)。现在的目标是访问成绩值并能够对其进行操作(取总和、平均值等)。