2011-09-04 16 views
5

Bir çıktı aldım, bundan hoşlanıyor.Python: Nasıl {apple: "1", turuncu: "2"} 'yi Sözlük'e nasıl ayrıştırabilirim?

{ 
    orange: '2', 
    apple: '1', 
    lemon: '3' 
} 

Ben bir standart JSON biçimi değil biliyorum ama Python Sözlük türü içine hala ayrıştırmak mümkün mü? portakal, elma, limon kağıdına alıntı yapılması zorunlu mu?

teşekkürler

+5

Bu çıktıyı nereden alırsanız alın, düzeltin ve geçerli JSON (imo) üretmesini söyleyin. –

+0

Evet, JSON nesnesinin bir ad/değer çiftinin adı uygun fiyatlı bir JSON dizesi olması gerekir. – Gumbo

cevap

14

Bu YAML (JSON oluşan bir set) geçerlidir. Bunu ayrıştırmak için PyYAML kullanın: string s içindeki bir sekme alanı olduğundan bu

>>> s = ''' 
... { 
...  orange: '2', 
...  apple: '1', 
...  lemon: '3' 
... }''' 
>>> import yaml 
>>> yaml.load(s) 
{'orange': '2', 'lemon': '3', 'apple': '1'} 

Daha, biz daha iyi YAML içine ayrıştırma önce çıkarın.

s=s.replace('\t','') 

Aksi takdirde, yukarıdaki dize ayrıştırılamaz.

+0

bu fanatik. Yapmak istediğim buydu! –

İlgili konular