美文网首页
python 字典的一键多值及值排序

python 字典的一键多值及值排序

作者: cced | 来源:发表于2020-01-01 20:53 被阅读0次

1. 一键多值

在生成字典时,有时会遇到一键多值的情况,如:{key1:[value1,value2,value3...],key2:[value4,value5,...]},采用defaultdict完成构建。

>>> from collections import defaultdict
>>> a=[1,2,3,4,1]
>>> b=[[22,33],[33,21],[54,32],[5656,33],[92,73]]
>>> d=defaultdict(list)
>>> for key,value in zip(a,b):
    d[key].append(value)
>>> d
defaultdict(<class 'list'>, {1: [[22, 33], [92, 73]], 2: [[33, 21]], 3: [[54, 32]], 4: [[5656, 33]]})

2.值排序

在字典进行循环排序,按照值的第一个元素的大小逆序排列

>>> for key,value in d.items():
    d[key].sort(key=(lambda x:x[0]),reverse=True)
>>> d
defaultdict(<class 'list'>, {1: [[92, 73], [22, 33]], 2: [[33, 21]], 3: [[54, 32]], 4: [[5656, 33]]})

相关文章

网友评论

      本文标题:python 字典的一键多值及值排序

      本文链接:https://www.haomeiwen.com/subject/swugoctx.html