我有一个包含 JSON 对象的文件。它是通过以下方式加载的:
with open('data.json', 'r') as input_file:
input_data = input_file.read()
此时 input_data 仅包含一个字符串,现在我继续将其解析为 JSON:
data_content = json.loads(input_data.decode('utf-8'))
data_content 具有我需要的字符串的 JSON 表示形式,但由于某种原因,在 json.loads 之后我不清楚它正在改变键的原始顺序,例如,如果我的文件包含类似以下内容的内容:
{ "z_id": 312312,
"fname": "test",
"program": "none",
"org": null
}
在 json.loads 之后,顺序被更改为:
{ "fname": "test",
"program": None,
"z_id": 312312,
"org": "none"
}
为什么会发生这种情况?有没有办法保留订单?我正在使用Python 2.7。