我需要制作类似于以下内容的JSON输出
{ "items": [
"number": {
"value": 23
"label": test
}
]
}
我已经用下面的代码做了类似的事情,但我无法弄清楚我需要在项目下嵌套数字。
#!/usr/bin/python
import json
myjson = {'items':[]}
d = {}
d['value'] = 23
d['label'] = "test"
myjson.get('items').append(d)
output = json.dumps(myjson)
print output
那给了我
{
"items": [{
"value": 23,
"label": "test"}
]}
答案 0 :(得分:4)
您的输入JSON不合适,应该是:
{ "items":
[
{
"number":
{
"value": 23,
"label": "test"
}
}
]
}
除此之外它可能会变得混乱,但访问结果dict是直观的。
jdict = json.loads(yourjson)
jdict['items'] => [{"number":{...}}]
jdict['items'][0] => {"number":{...}}
jdict['items'][0]['number']['value'] => 23
修改强>
认为你其实只是想要这个:
myjson.get('items').append({'number': d})
您必须附加字典,而不是字词条目到项目。