mwbr.net
当前位置:首页 >> python怎么对字典进行排序 >>

python怎么对字典进行排序

python 字典(dict)的特点就是无序的,按照键(key)来提取相应值(value),如果我们需要字典按值排序的话,那可以用下面的方法来进行: 1 下面的是按照value的值从大到小的顺序来排序。 dic = {'a':31, 'bc':5, 'c':3, 'asd':4, 'aa':74, 'd'...

disks_info=[{u'diskname': u'/dev/vda', u'disktype': u'HDD', u'tag': [u'mounted', u'boot'], u'slotnum': None, u'rpm': 7200, u'size': 50}, {u'diskname': u'/dev/vdb', u'disktype': u'HDD', u'tag': [u'osd_data'], u'slotnum': None, u...

# python3.6d = {'a': 1, 'b': 2}sd = dict(sorted(d.items(), key=lambda x: x[1], reverse=True))

s = {"a":"bb","b":"cc","c":"aa"}def fun(s):d = sorted(s.iteritems(),key=lambda t:t[1],reverse=False)return dd = fun(s)print diteritems() 得到的[(键,值)]的列表, 通过sorted方法,指定排序的键值key是原来字典中的value属性,其中用...

L=[{'status':1,'com':'a'},{'status':2 ,'com':'c' },{'status':1 ,'com':'b' },{'status':1 ,'com':'a' }]L.sort(key=lambda x:(-x['status'],x['com'])) #print L

#输出的顺序却不是我们预想的那样初始化的顺序,查询相关文献得知,Python保证遍##历字典所有元素,但不保证遍历的顺序,假如我们期望按预先的顺序进行遍历的话,#我目前找到一个办法,就是通过两个List分别存储Key和Value,然后通过zip合并为Di...

before = { "key1": 5, "key2": 6, "key3": 4, "key4": 3,}# 排序after = dict(sorted(before.items(), key=lambda e: e[1]))print(after)# 取出前几个, 也可以在sorted返回的list中取前几个cnt = 0 for key, value in after.items(): cnt += 1...

>>> d {'a': 1, 'world': 11, 'z': 9, 'hello': 10} >>> k=d.keys() >>> k.sort() >>> k ['a', 'hello', 'world', 'z'] >>> t=map(lambda key:(key,d[key]),k) >>> t [('a', 1), ('hello', 10), ('world', 11), ('z', 9)]

可以使用 OrderedDict() 函数 , 在字典里保持 插入时到顺序, 也就是说你在插入字典前先做好排序

在Python2.7.x版本中, collections类增加了OrderedDict, 用法如下:   在Python2.7.x版本中, collections类增加了OrderedDict, 用法如下: pywugw@pywugw-laptop:~$ /usr/local/bin/python2.7 Python 2.7b1 (r27b1:79927, Apr 26 2010, 11:...

网站首页 | 网站地图
All rights reserved Powered by www.mwbr.net
copyright ©right 2010-2021。
内容来自网络,如有侵犯请联系客服。zhit325@qq.com