Python中如何根据用户输入的字典值来进行排序

例如用户输入名字和对应的分数后,根据对应的分数进行排名


import math
import os
try:
    while True:
        n=int(input())
        flag=int(input())
        keys = []
        for i in range(n):
            s=str(input())
            value = s.split(' ',1)
            keys.append(value)
        if(flag==0):
            new=sorted(keys, key=lambda d: int(d[1]),reverse=True)
            for i in range(n):
                print(' '.join(new[i]))
        else:
            new=sorted(keys, key=lambda d: int(d[1]),reverse=False)
            for i in range(n):
                print(' '.join(new[i]))
except:
    pass