python追加到json对象中的数组

Posted

技术标签:

【中文标题】python追加到json对象中的数组【英文标题】:python append to array in json object 【发布时间】:2012-06-09 08:04:11 【问题描述】:

我在 python 中有以下 json 对象:

jsonobj = 
          "a": 
              "b": 
                      "c": var1,
                      "d": var2,
                      "e": [],
                   ,

                ,
            

我想将键值元素附加到“e”中,但无法弄清楚它的语法。我尝试附加以下内容,但括号和引号不正确:

jsobj["a"]["b"]["e"].append("'f':" + var3)

相反,我希望“e”如下:

"e":[
       "f":var3, "g":var4, "h":var5,
       "f":var6, "g":var7, "h":var8,
    ]

有人知道追加到这个 json 数组的正确方法吗?非常感谢。

【问题讨论】:

从技术上讲,这不是一个 JSON 对象(即使它是以 JSON 样式格式化的),它是一个 python 字典。这不是“用括号和引号直接出现”,因为您是 append()将字符串添加到字典值 [] 【参考方案1】:

只需将字典添加为字典对象而不是字符串:

jsobj["a"]["b"]["e"].append(dict(f=var3))

完整来源:

var1 = 11
var2 = 32
jsonobj = "a":"b":"c": var1,
                     "d": var2,
                     "e": [],
                    ,
               ,
           
var3 = 444
jsonobj["a"]["b"]["e"].append(dict(f=var3))

jsonobj 将包含:

'a': 'b': 'c': 11, 'd': 32, 'e': ['f': 444]

【讨论】:

【参考方案2】:
jsobj["a"]["b"]["e"].append("f":var3, "g":var4, "h":var5)
jsobj["a"]["b"]["e"].append("f":var6, "g":var7, "h":var8)

【讨论】:

【参考方案3】:
jsonobj["a"]["b"]["e"] += ['f': var3, 'g' : var4, 'h': var5, 
                           'f': var6, 'g' : var7, 'h': var8]

【讨论】:

有extend 方法。

以上是关于python追加到json对象中的数组的主要内容,如果未能解决你的问题,请参考以下文章

PHP json多维数组追加数组怎么写?

PHP json多维数组追加数组怎么写?

为每个 TableViewCell 实例化新数组

使用python打印嵌套在数组中的json对象

在通过 Python (discord.py) 输入追加时组织 JSON 文件

无法从python中的json数组获取嵌套对象