Python JSON输入顺序

Python JSON input order

本问题已经有最佳答案,请猛点这里访问。

我正试图读取一个JSON文件,其中包含我想要保持有序的数据,因为它是一个无法更改的数学方程。我尝试过使用ordereddict(),但是这不起作用(或者我不能让它起作用)。

下面是我使用的代码:

1
2
3
4
5
6
7
import json
from collections import OrderedDict

json_data = open('example3.json')
data = OrderedDict(json.load(json_data))

print (json.dumps(data))

有人能解释一下为什么这不起作用吗?

亲切的问候克雷格


将JSON数据json.loadLoad into the在字典。你会OrderedDictconvert this dictionary to an。不幸的是他/她,因为它是第一次可以have already the dictionary is changed"之前,它OrderedDict茶集"。P></

to load the JSON,你可以使用directly into an argument OrderedDictOrderedDictobject_pairs_hookwith the keyword。see the documentation for more details。P></

1
2
3
4
5
import json
from collections import OrderedDict

json_data = open('example3.json')
data = json.load(json_data, object_pairs_hook=OrderedDict)