的顺序。它被装载方式如下:Python的json.loads改变我有一个包含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。
为什么你需要字典顺序? –
如果你确实需要的命令,那么http://stackoverflow.com/questions/6921699/can-i-get-json-to-load-into-an-ordereddict-in-python – tdelaney
我认为这是一个坏榜样,因为钥匙按字母顺序排列。我将编辑示例。我的意思是我想要的对象没有改变,但持有什么顺序它最初曾 – Sebastian