我有一个包含字符串键和int值的字典
for word in coocc[query]:
resp[word]=coocc[query][word]
{“份额”:1,“比萨饼”:3,“饮食”:1,...}
我需要按值排序并返回json字符串。
以下作品:
sortedList=sorted(resp.items(), key=operator.itemgetter(1), reverse=True)
sortedDict=collections.OrderedDict(sortedList)
return json.dumps(sortedDict)
'{“奶酪”:4,“比萨饼”:3,“桌子”:3,..}
但是对我来说似乎不是很有效
答案 0 :(得分:0)
json.dumps(sorted(yourdict.items(), key=operator.itemgetter(1),reverse=True))
您可以找到更多详细信息 Here
答案 1 :(得分:0)
Python 3解决方案:
d = {"share": 1, "pizza": 3, "eating": 1,"table": 5, "cheese": 4 }
sorted = dict(sorted(d.items(), key=lambda x: x[1]))
print(sorted)
print (json.dumps(sorted))
输出:
{'share': 1, 'eating': 1, 'pizza': 3, 'cheese': 4, 'table': 5}
{"share": 1, "eating": 1, "pizza": 3, "cheese": 4, "table": 5}
编辑:
import json
d = {"share": 1, "pizza": 3, "eating": 1,"table": 5, "cheese": 4 }
sorted = dict(sorted(d.items(), key=lambda x: x[1], reverse = True))
print(sorted)
print (json.dumps(sorted))
输出:
{'table': 5, 'cheese': 4, 'pizza': 3, 'share': 1, 'eating': 1}
{"table": 5, "cheese": 4, "pizza": 3, "share": 1, "eating": 1}