3 AĞUSTOS 2011, ÇARŞAMBA
JSON Python bir OrderedDict yüklemek için alabilir miyim?
json.dump
bir OrderedDict, ben, Tamam. Bu, bir OrderedDict bir giriş olarak JSON için kullanılabilir.
Ama bir çıkış olarak kullanılabilir mi? Eğer öyleyse nasıl? Benim durumumda 4* *dosyasında anahtarları sırası bende kalacak, öyle bir OrderedDict içine etmek istiyorum.
, Geçici bir çözüm.
CEVAP
3 AĞUSTOS 2011, ÇARŞAMBA
Evet, yapabilirsiniz. JSONDecoder object_pairs_hook
değişken belirterek. Aslında, bu tam örnek belgelere yer verilir.
>>> json.JSONDecoder(object_pairs_hook=collections.OrderedDict).decode('{"foo":1, "bar": 2}')
OrderedDict([('foo', 1), ('bar', 2)])
>>>
json.loads
Eğer başka amaçlar için Decoder örneği ihtiyacın olursa ... () bu parametre, yani geçirebilirsiniz:
>>> import json
>>> from collections import OrderedDict
>>> data = json.loads('{"foo":1, "bar": 2}', object_pairs_hook=OrderedDict)
>>> print json.dumps(data, indent=4)
{
"foo": 1,
"bar": 2
}
>>>
json.load
kullanarak aynı şekilde yapılır:
>>> data = json.load(open('config.json'), object_pairs_hook=OrderedDict)
Bunu Paylaş:
Nasıl modül kendi içinde bir modül içi...
`Pip` `easy_install` için `python setu...
Nasıl bir dize dönüştürmek için yığın ...
Nasıl, asenkron yerine senkron AJAX is...
Nasıl yerel olarak yüklü Python modüll...