多くのJSONオブジェクトを構築したいという要件があります。また、さまざまな定義があり、理想的には、それらをクラスのように管理し、オブジェクトを構築し、必要に応じてJSONにダンプしたいと考えています。PythonクラスからJSON
私は、働いて勉強または両方されている人々を表現する必要があると言うことができますそれをシンプルに保つために、次の
を行うレッツ既存のパッケージ/レシピがあります:
[{
"Name": "Foo",
"JobInfo": {
"JobTitle": "Sr Manager",
"Salary": 4455
},
"Name": "Bar",
"CourseInfo": {
"CourseTitle": "Intro 101",
"Units": 3
}]
私は思いますが、有効なJSONをダンプできるオブジェクトを作成するのが好きですが、通常のPythonクラスのように作成します。
私は、DBモデルのように私のクラスを定義したいと思います:
class Person:
Name = String()
JobInfo = Job()
CourseInfo = Course()
class Job:
JobTitle = String()
Salary = Integer()
class Course:
CourseTitle = String()
Units = Integer()
persons = [Person("Foo", Job("Sr Manager", 4455)), Person("Bar", Course("Intro 101", 3))]
person_list = list(persons)
print person_list.to_json() # this should print the JSON example from above
EDIT
私はこのを達成するために自分自身のミニフレームワークを書きました。
pip install pymodjson
ピップを経由して、使用可能なコードおよび実施例は、ここに用意されています(MIT) https://github.com/saravanareddy/pymodjson
[ここを参照してください](http://stackoverflow.com/questions/3768895/how-to-make-a-class-json-serializable)。検証部分については、独自の 'JSONEncoder'を記述する必要があります。 – Sevanteri