Özel bir sınıfım var, arayalım ObjectA() sınıfıdır ve bir dizi işlev, özellik vb. Var ve python'daki standart json kütüphanesini kullanarak nesneyi serileştirmek istiyorum , bu nesnenin özel bir kodlayıcı yazmadan JSON'a serileştirilmesi için ne yapmam gerekiyor? Özel Sınıf JSON'u serialize edilebilir yapın
sizecevap
Alt Sınıf json.JSONEncoder ederiz ve daha sonra uygun bir sözlüğü ya da dizi oluşturmak.
Bkz Bunun gibi this link
arkasında "JSONEncoder genişletme":
Muhtemelen>>> class A: pass
...
>>> a = A()
>>> a.foo = "bar"
>>> import json
>>>
>>> class MyEncoder(json.JSONEncoder):
... def default(self, obj):
... if isinstance(obj, A):
... return { "foo" : obj.foo }
... return json.JSONEncoder.default(self, obj)
...
>>> json.dumps(a, cls=MyEncoder)
'{"foo": "bar"}'
'Özel bir kodlayıcı olmadan mümkün değil. Sorunun önermesi, jsonun kodlamayı önceden bilmediği şeklindeyse, herhangi bir çözüm özel bir kodlayıcı içerecektir. Belki de JSONEncoder'ı genişleten biri değil - bir nesneyi bir dict üzerine haritalayan basit bir f() yazabilirsiniz, ancak özel bir kodlayıcı olmasa ne olur? – Ford
yazmadan -a-sınıf-json-seri hale getirilebilir – FrobberOfBits
Cevabınızda, OP'nin mümkün olmadığını ve diğer seçeneklerin (varsa) ne olduğunu bildiğinden bahsetmeliyiz. Üzgünüm, biraz kaba gelsem. – Ford
- 1. Java 8'de serialize edilebilir lambdaların performansı
- 2. Sınıf kurucusunda parametreye sahip kabul edilebilir mi?
- 3. XMLServize Edilebilir GözlemKontrolü
- 4. Web2py jsonu döndürün veya yönlendirin
- 5. Laravel yönlendirme ve yanıtlama jsonu
- 6. arka plan üzerinde değişiklik yapın onclick sınıf
- 7. JUnit özel bir sınıf başvurusu
- 8. Özel html şablonuyla önyükleme önyükleme çalışması yapın
- 9. serialize listesi [Herhangi] olarak/Bir vaka sınıf var Jackson
- 10. (De-) serialize Bean zamanında
- 11. Heroku'da özel bir NodeJs uygulaması yapın
- 12. Özel sınıf için arkadaş
- 13. çağrı özel sınıf
- 14. başlatmasını Özel Sınıf NSDictionary
- 15. Özel döküm türetilmiş sınıf
- 16. jQuery kullanarak ifade etmek için jsonu atama
- 17. Bir sınıf hiyerarşisi serialize ve serisini bu yaklaşımı kullanıyorum bir sınıf numaralayıcısı
- 18. JSON'da Deserialize & Serialize nedir,
- 19. JMS Serialize @VirtualProperty çalışmıyor
- 20. Serialize dizisi, strong_parameters ile
- 21. Raylar serialize ilgili veriler
- 22. Serialize Composed Func?
- 23. joda'nın serialize dizisi LocalTime
- 24. serialize önek ağaç
- 25. Jquery sıralanabilir ('serialize')
- 26. Serialize DateTime ikili olarak
- 27. Xml Serialize Tornalama Listesi
- 28. Yakut: serialize UTF8 sorunu
- 29. serialize xml farklı unsurlar
- 30. serialize JAXB'ın POJOs
bu soruya bir dupe: http://stackoverflow.com/questions/3768895/python-how-to-make -Özel bir kodlayıcı ' – dano