5、字典嵌套列表的操作:创建一个字典,其中键是学生的姓名,值是一个包含多门课程及其分数的列表(用字典表示),计算每个学生的平均分,并输出最高平均分的学生姓名及其平均分。
时间: 2024-10-17 13:08:36 浏览: 15
在Python中,你可以通过以下几个步骤来操作这种嵌套的字典和列表:
1. 首先,创建一个字典,其中学生姓名作为键,值是一个包含课程名和分数的字典列表。例如:
```python
students = {
"张三": [{"课程": "数学", "分数": 90}, {"课程": "英语", "分数": 85}],
"李四": [{"课程": "数学", "分数": 95}, {"课程": "语文", "分数": 92}],
"王五": [{"课程": "数学", "分数": 88}, {"课程": "英语", "分数": 90}]
}
```
2. 然后,你需要遍历这个字典,对每个学生的成绩进行计算。可以先将每个学生的总分和课程数存储起来,然后除以课程数得到平均分。这里我们假设所有学生的课程数都相同:
```python
total_scores = {}
for name, courses in students.items():
total_score = sum(course["分数"] for course in courses)
avg_score = total_score / len(courses)
total_scores[name] = (avg_score, total_score)
# 找出最高平均分的学生和分数
max_avg_student = max(total_scores, key=total_scores.get)[0]
max_avg_score = total_scores[max_avg_student][0]
print(f"最高平均分的学生是 {max_avg_student},平均分为 {max_avg_score}")
```
阅读全文