JSON文件解析Python

时间:2013-05-09 11:54:42

标签: python json parsing

[{"cat1":136803,"cat2":"1.4545","cat3":"0.0885","cat4":"112969"},
 {"cat1":1564654,"cat2":"2.5448","cat3":"0.0568","cat4":"5468489"},
 {"cat1":5484654,"cat2":"1.8948","cat3":"0.0478","cat4":"898489"}]

我有一个类似上面的JSON结构。

我的代码:

import json
from pprint import pprint

with open('file/path') as data_file:    
    data = json.load(data_file)

data["cat1"]

给我一​​个错误,列表标记必须是整数而不是str

我如何解析这个只返回我想要的东西,说“cat1”?

我的目标是从我的JSON文件中解析出我想要的内容,然后将其写入CSV文件。

2 个答案:

答案 0 :(得分:2)

您的JSON结构是字典列表。所以,你必须写:

data[0]["cat1"]

答案 1 :(得分:0)

要获取与键cat1关联的值,请尝试:

cat1 = [dct['cat1'] for dct in data]

请注意,data是dicts的列表,而不是dict本身。 因此,您必须遍历列表中的项目(即dicts),然后才能访问与密钥cat1关联的值。