python - 如何使用 Python 制作嵌套 JSON 对象

标签 python json

我需要制作如下所示的 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"}
]}

最佳答案

您输入的 JSON 不正确,应该类似于:

{ "items": 
    [ 
       {
       "number": 
           {
           "value": 23,
           "label": "test"
           }
       } 
    ] 
}

除此之外它可能会变得困惑,但访问结果字典很直观。

 jdict = json.loads(yourjson)
 jdict['items'] => [{"number":{...}}]
 jdict['items'][0] => {"number":{...}}
 jdict['items'][0]['number']['value'] => 23

编辑:

认为您实际上只是想要这个:

myjson.get('items').append({'number': d})

您必须将字典而不是字典的条目附加到项目。

关于python - 如何使用 Python 制作嵌套 JSON 对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32598995/

相关文章:

javascript - 用js生成动态站点地图?

java - 为什么合并我的代码后我的 @JsonAlias 不起作用?

python - 如何为预定义方程中的变量分配新值?

python - cx_Oracle.DatabaseError : ORA-00942: table or view does not exist

python - 获取 HTML 源代码,包括 javascript 和身份验证的结果

vb.net - 傻瓜的简单 JSON 反序列化

javascript - 语法错误: missing ) after for-loop control(JSON)

c# - 如何在代码中写入 JSON 字符串值?

Python 2.7 将 Hex 和 Dec 读取为 Str 然后添加它们

python - 将纹理传递给 GLSL