2012-09-26 24 views
5

Bir json nesnesini ayrıştırıp sorun yaşamaya çalışıyorum.Python'u kullanarak json nesnesini nasıl ayrıştırırım?

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 

Ben değerlerini edinme anlayabiliriz. Anahtarları alabilirim. Lütfen yardım et.

+0

, o zaman kesinlikle değerler elde edebilirsiniz. Bu örnek, iç içe geçmiş bir sözlüğü göstermektedir. Bunun üzerinden dönün, değeri görüntülemeden önce bir sözlük olup olmadığını kontrol edin –

+0

Sanırım anladım. – nebulus

cevap

12

Artık bir JSON nesnesine sahip değilsiniz, bir Python dictionary. Bir sözlük üzerinde yineleme, anahtarlarını üretir. Değerlere erişmek istiyorsanız, özgün sözlüğü dizine ekleyin ya da farklı bir şey döndüren yöntemlerden birini kullanın. Anahtarları alabilirsiniz

>>> 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 
İlgili konular