你好,你这个可以通过一个二维数组和lambda表达式排序并展示
students = [
[1001, 'Kelly', 65],
[1002, 'Max', 78],
[1003, 'Jerry', 95],
[1004, 'Lori', 88],
[1005, 'Grace', 96]
]
# 按照成绩从高到低排序
students.sort(key=lambda x: x[2], reverse=True)
# 输出前三名
print('成绩前三')
for i in range(3):
student = students[i]
print('名:')
print(f'学号:{student[0]}', end='')
print(f'姓名:{student[1]}', end='')
print(f'成绩:{student[2]}')
代码如下:
students = []
for i in range(5):
info = input().split()
student = {'id': info[0], 'name': info[1], 'score': int(info[2])}
students.append(student)
students.sort(key=lambda x: x['score'], reverse=True)
for i in range(3):
print('学号:{} 姓名:{} 成绩:{}'.format(students[i]['id'], students[i]['name'], students[i]['score']))
运行结果: