我想将数据存储在.json文件中,如使用python language-
{object:
{
name: "abcd",
id: "fwfwfwf"
}
{
name: "efgh",
id: "wderds"
}
..
.. and so on
}
{container:
{
name: "pros",
id: "zxcdsef"
}
{
name: "mnop",
id: "waqsred"
}
..
.. and so on
}
现在我想再次使用f.read()或类似方法读取文件中对象/容器的特定成员。\
如何使用python和JSON解析此文件?
#先生,我想问一件事。假设我的data.json文件就像 -
{
"object": [
{
"name": "abcd",
"id": "fwfwfwf"
},
{
"name": "efgh",
"id": "wderds"
}
]
}
{
"container": [
{
"name": "pqrs",
"id": "fwfwfwf"
},
{
"name": "mnop",
"id": "wderds"
}
]
}
现在我想在此文件中添加一个容器,该容器将在容器下。 您能否告诉我如何使用f.write()
在文件中编写新容器答案 0 :(得分:2)
首先创建有效的json。您可以使用任何链接like
验证您的json{
"object": [
{
"name": "abcd",
"id": "fwfwfwf"
},
{
"name": "efgh",
"id": "wderds"
}
]
}
现在是python脚本
import json
with open('data.json') as data_file:
data = json.load(data_file)
您可以访问以下数据:
data["objects"][0]["id"] # will return 'fwfwfwf'
data["objects"][1]["name"] #will return 'efgh'
答案 1 :(得分:0)
使用http://jsonlint.com/
验证您的json。在json文件中,标识符有双引号。数字int / float不需要。
通常,json文件是文本格式的python字典。您可以使用json模块来解析json文件。
import json
myfile = open('yourfilename', 'r')
myjsondata_as_dict = json.load(myfile)
之后,如果json格式没有错误,myjsondata_as_dict会将你的json数据作为字典。
答案 2 :(得分:0)
这是将数据精简地转储到JSON中的语法。
with open('abc.json', 'wb') as outfile:
json.dump(obj, outfile, indent = 4)
要从JSON文件加载,请使用
with open('abc.json') as infile:
data = json.load(infile)
更多信息http://freepythontips.wordpress.com/2013/08/08/storing-and-loading-data-with-json/