我在OrderedDicts和排序方面遇到了一些问题。
目前我的dict具有以下布局:
equipment_type_id
我想要做的是按降序对键值上的每个嵌套字典进行排序。 所以输出应该如下所示:
{"da": {1.0 : [], 1.5 : []}, "en" : {1.2 : [], 1.8 : []}}
使用OrderedDict证明是一项挑战
{"da": {1.5 : [], 1.0 : []}, "en" : {1.8 : [], 1.2 : []}}
这给了我:
outputDict = OrderedDict(sorted(inputDict.items(), key=lambda t: t[1].keys()))
答案 0 :(得分:2)
你可以试试这个:
import collections
a={"da": {1.0 : [], 1.5 : []}, "en" : {1.2 : [], 1.8 : []}}
print {k:collections.OrderedDict(sorted(v.items(),reverse=True)) for k,v in a.items()}
输出:
{'en': OrderedDict([(1.8, []), (1.2, [])]), 'da': OrderedDict([(1.5, []), (1.0, [])])}