class Student:
def __init__(self, id: int, name: str = None, score: int = 0):
self.name = name
self.score = score
self.id = id
try :
while True:
count = int(input())
sortFunc = int(input())
students = []
for i in range(count):
name, score = input().split()
score = int(score)
students.append(Student(i, name, score))
if sortFunc == 0:
sortedStudents = sorted(students, key=lambda s: (-s.score, s.id))
else:
sortedStudents = sorted(students, key=lambda s: (s.score, s.id))
for student in sortedStudents:
print("{} {}".format(student.name, student.score))
except EOFError:
print()
设计一个学生类,除了姓名和成绩属性之外,再加上一个id属性,判断先后顺序,排序时只需要先比较成绩再比较先后顺序即可。

京公网安备 11010502036488号