实际案例:
某班英语成绩以字典形式存储为:{'lily':80,'lucy':85,'lilei':96,....}
根据成绩高低,计算学生排名
解决方案:使用内置函数sorted
1.利用zip将字典转化为元组
2.利用sorted函数的key参数
# 元组的比较,从第一个元素开始
# print((97,'a') > (69,'b')) # True
# print((97,'a') > (97,'b')) # False
from random import randint
data = {x:randint(60,100) for x in "abcdef"} # 构造随机成绩字典
# 方式一
print(sorted(zip(data.values(),data.keys()))) # 利用元组的比较
# 方式二
print(sorted(data.items(),key=lambda x:x[1])) # 利用key参数