Python 控制台循环输入3个学生的姓名、年龄、成绩,并保 存到字典列表当中,结构为[{学生1,学生2,学生 3}], 在控制台输出如下结果: 1)根据年龄升序排序 2)根据成绩降序排序
时间: 2023-06-14 17:03:50 浏览: 251
以下是代码实现:
```python
students = [] # 学生信息列表
# 循环输入学生信息
for i in range(3):
name = input("请输入第{}个学生的姓名:".format(i+1))
age = int(input("请输入第{}个学生的年龄:".format(i+1)))
score = float(input("请输入第{}个学生的成绩:".format(i+1)))
student = {"姓名": name, "年龄": age, "成绩": score}
students.append(student)
# 根据年龄升序排序
students_age_sorted = sorted(students, key=lambda x: x["年龄"])
# 根据成绩降序排序
students_score_sorted = sorted(students, key=lambda x: x["成绩"], reverse=True)
# 输出结果
print("按年龄升序排序结果:")
for student in students_age_sorted:
print("姓名:{},年龄:{},成绩:{}".format(student["姓名"], student["年龄"], student["成绩"]))
print("按成绩降序排序结果:")
for student in students_score_sorted:
print("姓名:{},年龄:{},成绩:{}".format(student["姓名"], student["年龄"], student["成绩"]))
```
示例输出:
```
请输入第1个学生的姓名:张三
请输入第1个学生的年龄:23
请输入第1个学生的成绩:89.5
请输入第2个学生的姓名:李四
请输入第2个学生的年龄:21
请输入第2个学生的成绩:92.0
请输入第3个学生的姓名:王五
请输入第3个学生的年龄:25
请输入第3个学生的成绩:85.5
按年龄升序排序结果:
姓名:李四,年龄:21,成绩:92.0
姓名:张三,年龄:23,成绩:89.5
姓名:王五,年龄:25,成绩:85.5
按成绩降序排序结果:
姓名:李四,年龄:21,成绩:92.0
姓名:张三,年龄:23,成绩:89.5
姓名:王五,年龄:25,成绩:85.5
```
阅读全文