2016-07-21 2 views
0

У меня есть файл с массивом json без объекта. Как его разобрать в python. Я хотел бы построить все dataNomTime в массив.Parse json array с внешним объектом в python

[{ 
    "id": 8916, 
    "objectPaths": ["/thmo/help"], 
    "dataTime": 1464961203, 
    "dataNomTime": 1464818400, 
    "dataEndTime": 1464904800, 
    "attribs": null 
}, { 
    "id": 8917, 
    "objectPaths": ["/thmo/help"], 
    "dataTime": 1464961203, 
    "dataNomTime": 1464818400, 
    "dataEndTime": 1464904800, 
    "attribs": null 
}] 

Мой код

import json 
from pprint import pprint 

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

#pprint(data) 
pprint(data["dataNomTime"]) 

Исключение

pprint(data["dataNomTime"]) 
TypeError: list indices must be integers, not str 

ответ

3

Поскольку у вас есть список словарей, data список и должны быть лечение в виде списка.

Если вы хотите, чтобы извлечь все dataNomTime вы должны сделать:

nom_times_list = [] 
for obj in data: 
    nom_times_list.append(obj['dataNomTime']) 

Или как список понимания:

nom_times_list = [obj['dataNomTime'] for obj in data] 
+0

сладком, спасибо. – Chucks

+0

Что такое различие между понятием списка и добавлением? – Chucks

+0

@Chucks В основном длина требуемого кода – DeepSpace