JSON 来自 Python 中的流数据

JSON from streamed data in Python

我只是想保持以下输入和结果 JSON 字符串的顺序。

这里是输入字符串和代码:

import json

testlist=[]
# we create a list as a tuple so the dictionary order stays correct
testlist=[({"header":{"stream":2,"function":3,"reply":True},"body": [({"format": "A", "value":"This is some text"})]})]

print 'py data string: '

print testlist

data_string = json.dumps(testlist)

print 'json string: '

print data_string

这是输出字符串:

json string: 
[{"body": [{"format": "A", "value": "This is some text"}], "header": {"stream": 2, "function": 3, "reply": true}}]

我试图让输出的顺序与输入的顺序相同。

任何帮助都会很棒。我似乎无法理解这一点。

正如劳伦特所写,你的问题不是很清楚,但我试一试:

OrderedDict.update 在上述情况下将 databody 的条目添加到字典中。 你似乎想要做的是 data['body'] = databody ,其中 databody 是这个列表 [{"format":"A","value":"This is a text\nthat I am sending\n to a file"},{"format":"U6","value":5},{"format":"Boolean","value":true}, "format":"F4", "value":8.10}] 因此,首先构建此列表结尾,然后将其添加到您的字典中加上您在 post 中所写的是要解析为 json 的最终变量是一个列表,因此 data_string = json.dumps([data])