-1

我只是想按顺序保持以下输入和生成的 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}}]

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

任何帮助都会很棒。我似乎无法弄清楚这一点。

4

1 回答 1

0

正如 Laurent 所写,您的问题不是很清楚,但我试一试:

OrderedDict.update在上述情况下,将 的条目添加databody到字典中。你似乎想要做的是这个列表 data['body'] = databody在哪里 所以首先构建这个列表结束然后将它添加到你的字典加上你在你的帖子中写的是要解析成json的最终变量是一个列表所以这样做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}]data_string = json.dumps([data])

于 2016-08-15T22:33:25.907 回答