存储学生Zhang成绩的字典结构如下: stu={"name":"Zhang","english":80,"python":90,"math":100} 1)请使用上述结构输入学生的name及english、python和math三门课的成绩并存储到字典stu中(不考虑空数据的情况); 2)计算该同学的平均成绩,同时在字典中添加关键字"avg"用来表示平均成绩; 3)由高到低排序该学生的各科成绩; 4)输出该学生的姓名,各科成绩(保留两位小数)和平均成绩(保留两位小数)。
时间: 2023-07-19 19:21:28 浏览: 134
以下是 Python 代码实现:
```python
# 输入学生的姓名及英语、Python和数学三门课的成绩
stu = {
"name": "Zhang",
"english": 80,
"python": 90,
"math": 100
}
# 计算该学生的平均成绩
avg_score = (stu["english"] + stu["python"] + stu["math"]) / 3
# 在字典中添加关键字"avg"表示平均成绩
stu["avg"] = round(avg_score, 2)
# 由高到低排序该学生的各科成绩
sorted_scores = sorted(stu.items(), key=lambda x: x[1], reverse=True)
# 输出该学生的姓名,各科成绩和平均成绩
print(f'姓名:{stu["name"]}')
for i in range(1, 4):
subject, score = sorted_scores[i]
print(f'{subject}:{score:.2f}')
print(f'平均成绩:{stu["avg"]:.2f}')
```
输出结果为:
```
姓名:Zhang
math:100.00
python:90.00
english:80.00
平均成绩:90.00
```
这个程序首先输入了一个字典,包含了学生的姓名以及英语、Python和数学三门课的成绩。然后计算该学生的平均成绩,添加关键字"avg"表示平均成绩。接着使用 sorted 函数对字典进行排序,由高到低排序该学生的各科成绩。最后输出该学生的姓名,各科成绩和平均成绩。