python创建有序字典,字典按value排序:
创建有序字典:导入collections
import collections
dic=collections.OrderedDict()
dic['k1']='v1'
dic['k2']='v2'
dic['k3']='v3'
print(dic)
eg:统计数组中出现次数最多的数据,按出现次数由大到小排序
a=['a','c','s','r','a','b','b','c','r','s','e','t','a','z']
duixiang=list(set(a)) #先去重,去重后为集合{},无法保证顺序,
# duixiang.sort(key=a.index)#可使用duixiang.sort(key=a.index)来保证原来顺序
# print(duixiang)
dic={}
for i in duixiang:
dic[i]=a.count(i) #每个对象和出现次数保存在字典
b=sorted(dic.items(),key=lambda x:x[1],reverse=True) #字典按值从大到小排序
print(b)
1