私はPythonオブジェクトをjsonに変換するためのエンコーダを作成しています。リサーチするときにはdefault
メソッドを含む多くのソリューションがあります。私はPythonの専門家ではありませんが、どちらも初心者ではありません。クラスが呼び出されたときに自動的に実行されるdefault
メソッドが何らかの形で見逃されているかどうかは疑問です。または、これは、私がJSONEcoder
クラス(デフォルトのメソッドを持ち、現在はオーバーライドしています)から継承したためですか?誰かが明確にすることはできますか?そしてもしそうなら、それはPythonのdefault()メソッド
__init__()
方法と同じで、基本的には?
class ComplexEncoder(json.JSONEncoder):
def default(self, obj):
if isinstance(obj, my_custom_object):
return str(obj)
return json.JSONEncoder.default(self, obj)
ええ、それは私のようなものも考え始めたことです。 default()が私が知らなかったある種の「魔法」だったかどうかは分かりませんでした。ありがとう! – AmericanMade