输入五名学生信息,并将学生信息以字典结构保存,加入列表计算每个学生平均成绩并排序输出。
时间: 2024-06-12 17:06:01 浏览: 27
以下是Python代码实现:
```python
students = [] # 学生信息列表
# 输入五名学生信息
for i in range(5):
name = input("请输入第{}名学生姓名:".format(i+1))
math = float(input("请输入{}的数学成绩:".format(name)))
english = float(input("请输入{}的英语成绩:".format(name)))
computer = float(input("请输入{}的计算机成绩:".format(name)))
# 以字典结构保存学生信息并加入列表
student = {"name": name, "math": math, "english": english, "computer": computer}
students.append(student)
# 计算每个学生平均成绩
for student in students:
avg_score = (student["math"] + student["english"] + student["computer"]) / 3
student["avg_score"] = avg_score
# 按平均成绩排序输出
students.sort(key=lambda x: x["avg_score"], reverse=True)
for student in students:
print("{}的平均成绩为:{:.2f}".format(student["name"], student["avg_score"]))
```
运行结果示例:
```
请输入第1名学生姓名:Tom
请输入Tom的数学成绩:78
请输入Tom的英语成绩:85
请输入Tom的计算机成绩:92
请输入第2名学生姓名:Jane
请输入Jane的数学成绩:89
请输入Jane的英语成绩:92
请输入Jane的计算机成绩:87
请输入第3名学生姓名:Bob
请输入Bob的数学成绩:76
请输入Bob的英语成绩:84
请输入Bob的计算机成绩:80
请输入第4名学生姓名:Alice
请输入Alice的数学成绩:92
请输入Alice的英语成绩:88
请输入Alice的计算机成绩:94
请输入第5名学生姓名:John
请输入John的数学成绩:85
请输入John的英语成绩:79
请输入John的计算机成绩:83
Alice的平均成绩为:91.33
Jane的平均成绩为:89.33
Tom的平均成绩为:85.00
John的平均成绩为:82.33
Bob的平均成绩为:80.00
```