我们在平常的操作中,可能涉及列表的排序的问题比较多,但是遇到字典的排序问题我们该如何解决呢?
下面是我写的测试代码,已经写好了完美的注释,可以直接拿过来用,代码如下:
encoding:utf-8
author = 'zhoupao'
date = '2018/7/15 20:35'
解决方案
1:用内置函数 sorted
from random import randint
创建一个成绩字典表 用字典解析的方式
d={x:randint(60,100) for x in 'abcdefg'}
print(dict(d))
print((97,'a')>(69,'b')) 返回的是True 所以我们要做的是将 字典的键变成值 将值变成键 转为元祖
字典转为元祖 用的是 zip
e=d.keys()
f=d.values()
这里 就把字典转换为 元祖了 并且得到了自己想要的值 然后就可以比较了
g=zip(e,f)
就按从小到大进行排序了
h=sorted(g)
利用sorted的key参数
s=sorted(d.items(),key=lambda x:x[1])
print(s)








网友评论