|  | 
 
10鱼币 
| first_year_courses = { "COMP1010": 45, "COMP1511": 560, "COMP1911": 100, "MATH1131": 1034, "MATH1231": 895, "FINS1612": 423, "FINS1613": 587, "ACCT1501": 327 } 
 找出每个学科领域注册的学生总数(课程代码的前 4 个字母)。 将这些数字存储在字典中。 你应该得到这个结果:
 
 {"COMP": 705, "MATH": 1929, "FINS": 1010, "ACCT": 327}
 
 注意:回想一下,在这个版本的 Python 中字典是无序的,所以你的结果可能与上面的顺序不同,但只要数字匹配,你的结果就是正确的。
 
 好兄弟请问下这个怎么办,越简单越好
 
 本帖最后由 梦回连营 于 2021-7-1 11:16 编辑 
复制代码first_year_courses = { "COMP1010": 45, "COMP1511": 560, "COMP1911": 100, "MATH1131": 1034, "MATH1231": 895, "FINS1612": 423, "FINS1613": 587, "ACCT1501": 327 }
course_nums = {}
for course in first_year_courses:        
        course_nums[course[:4]] = course_nums.get(course[:4], 0) + first_year_courses[course]         
        '''
        如果course所在的大类学科已经存在于course_nums中,就再加上此大类学科中的小类学科中的人数,如果该大类学科不存在于course_nums,在course_nums中添加该大类学科并将值设为0,再加上大类学科中的各小类学科人数
        '''
print(course_nums)
 | 
 |