2012-09-26 11 views
5

Estoy intentando analizar un objeto json y tener problemas.¿Cómo analizo json-object usando python?

import json 

record= '{"shirt":{"red":{"quanitity":100},"blue":{"quantity":10}},"pants":{"black":{"quantity":50}}}' 
inventory = json.loads(record) 
#HELP NEEDED HERE 
for item in inventory: 
    print item 

Puedo encontrar la manera de obtener los valores. Puedo obtener llaves. Por favor ayuda.

+0

Si usted puede conseguir las llaves, a continuación, que sin duda puede obtener los valores. Ese ejemplo muestra un diccionario anidado. Bucle a través de él, verificando si el valor es un diccionario antes de mostrarlo –

+0

Creo que lo tengo. – nebulus

Respuesta

12

Ya no tiene un objeto JSON, tiene una Python dictionary. La iteración sobre un diccionario produce sus claves.

>>> for k in {'foo': 42, 'bar': None}: 
... print k 
... 
foo 
bar 

Si desea acceder a los valores de índice de entonces o bien el diccionario original o utilizar uno de los métodos que devuelve algo diferente.

>>> for k in {'foo': 42, 'bar': None}.iteritems(): 
... print k 
... 
('foo', 42) 
('bar', None) 
4
import json 

record = '{"shirts":{"red":{"quantity":100},"blue":{"quantity":10}},"pants":{"black":{"quantity":50}}}' 
inventory = json.loads(record) 

for key, value in dict.items(inventory["shirts"]): 
    print key, value 

for key, value in dict.items(inventory["pants"]): 
    print key, value 
Cuestiones relacionadas