如何在Python中向空的JSON添加元素?

4
我创建了一个空字符串,并通过json.dump将其转换为JSON。一旦我想要添加元素,它就会失败并显示:

AttributeError:“'str'对象没有属性'append'”

我尝试了json.insertjson.append,但它们都不起作用。
看起来这是一个数据类型问题。由于Python不能像Java和C那样声明数据类型,我该如何避免这个问题?
import json

data = {}
json_data = json.dumps(data)
json_data.append(["A"]["1"])
print (json_data)

2
在将其转换为字符串(不是“JSON”)之前,将其添加到字典中? - jonrsharpe
1个回答

4

JSON是数据的字符串表示形式,例如列表和字典。您不会向JSON添加内容,而是向原始数据添加内容,然后将其转储。

此外,您不会使用append()来处理字典,它只能用于列表。

data = {} # This is a dictionary
data["a"] = "1"; # Add an item to the dictionary
json_data = json.dumps(data) # Convert the dictionary to a JSON string
print(json_data)

看起来 OP 对于什么是什么感到困惑,即 data 不是字符串,而是 dict,而 json_data 实际上是字符串等。如果您愿意,可以添加一些关于这方面的解释。 - buran
我已经添加了一些关于差异的解释。 - Barmar
谢谢!它有效了。 所以,如果我想添加新元素,我需要将JSON字符串转换回字典,而不是直接处理JSON字符串? - Sin Shu Kei

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接