用python编辑一个输入5个学生的姓名和成绩,输出其中最高分的学生姓名,最低分及最低分学生姓名和平均分。要求利用字典实现
时间: 2023-12-16 16:06:24 浏览: 28
好的,我可以为您提供代码实现。请看下面的Python代码:
```python
# 定义一个空字典
students = {}
# 循环5次,依次输入学生姓名和成绩,存储到字典中
for i in range(5):
name = input("请输入第{}个学生的姓名: ".format(i+1))
score = float(input("请输入{}的成绩: ".format(name)))
students[name] = score
# 通过字典的values方法,获取所有成绩的值
scores = students.values()
# 通过内置函数max和min,分别获取最高分和最低分
highest_score = max(scores)
lowest_score = min(scores)
# 循环遍历字典,查找最高分和最低分的学生姓名
highest_student = ''
lowest_student = ''
total_score = 0
for name, score in students.items():
total_score += score
if score == highest_score:
highest_student = name
if score == lowest_score:
lowest_student = name
# 计算平均分
average_score = total_score / len(students)
# 输出结果
print("最高分学生:{},成绩为:{}".format(highest_student, highest_score))
print("最低分学生:{},成绩为:{}".format(lowest_student, lowest_score))
print("平均分为:{}".format(average_score))
```
您可以将以上代码复制到Python编辑器中运行,按照提示输入学生姓名和成绩,即可得到最高分学生姓名,最低分及最低分学生姓名和平均分的结果输出。