ここでは、いくつかの JSON (形式を変更できません。これは私が作成したサービスではありません) を Python オブジェクトに逆シリアル化するための簡単な問題に取り組んでいます。json.loads
ラムダを使用して変換を行うことができましたが、メソッドを使用して変換を行うことが可能かどうかを確認するために、今 object_hook を使用したいと思います。しかし、それは私が今失敗しているところであり、誰かが私を正しい方向に向けることができるかどうか疑問に思っていました.
これは私が現在持っているコードです:
import json
class Light:
def __init__(self, id, name):
self.id = id
self.name = name
response = '{"1": {"name": "bedroom"}, "2": {"name": "kitchen"}}'
def object_decoder(obj):
return Light(......)
print json.loads(response, object_hook=object_decoder)
ご覧のとおり、response
は 1 と 2 という名前の 2 つのキーを持つ 1 つのドキュメントです。 が 2 つの Light オブジェクトを返すようにコードを動作させることができればいいのですjson.loads
が、現時点では行き詰まっています。 、そしてこれを機能させるために応答を反復する方法がわかりません。