我有以下 JSON
{
"clips": {
"0": {
"name": "Please",
"id": 1,
},
"1": {
"name": "Print",
"id": 2
},
"10": {
"name": "me",
"id": 3
},
"2": {
"name": "in order",
"id": 4
}
}
}
这是这样制作的:
print(json.dumps(data, sort_keys=True, indent=4)) 这很棒,因为它按字母数字顺序打印键。但是,我需要按实际数字顺序打印这些内容,因此在键 “2” 上方要在键 “10” 之前。
我知道 python 通常不会对字典中的键进行排序,但我需要这样做,因为 json 实际上会被人类读取并且对其进行排序会很棒。谢谢。
请您参考如下方法:
你可以使用字典理解技巧:
import json
d = dict({'2':'two', '11':'eleven'})
json.dumps({int(x):d[x] for x in d.keys()}, sort_keys=True)
输出:
'{"2": "two", "11": "eleven"}'
