コード
def from_json(src, cls):
"""
JSONオブジェクトからインスタンスを作る
Parameters
----------
src : dict
データの入ったJSONオブジェクト
cls : class
生成するインスタンスのクラス
Returns
-------
dest : cls
cls のインスタンス
"""
dest = cls()
# 必須属性を設定する
lacks = []
for key in cls.required:
if key in src:
setattr(dest, key, src[key])
else:
lacks.append(key)
if len(lacks) > 0:
msg = '{} は必須属性です'.format(','.join(lacks))
raise Exception(msg)
# 任意属性を設定する
for key in cls.not_required:
if key in src:
setattr(dest, key, src[key])
return dest
コメント