この記事によると:Pythonでscalaの@transient lazy valの最も近い実装は何ですか?
Python memoising/deferred lookup property decorator
ニーモニックデコレータはクラスで怠惰なプロパティを宣言するために使用することができます。箱から出して使用することができます「公式」のパッケージにもあります:
https://pypi.python.org/pypi/lazy
しかし、これらの実装の両方が深刻な問題を抱えている:任意の記憶値は、Pythonでpickle化しようとします。これらの値をunpicklableにすると、プログラムが破壊されます。
私の質問は、あまりにもしっかりしなくてもscalaの "@transient lazy val"宣言を実装する簡単な方法はありますか?この宣言では、複数の呼び出しの場合のプロパティを覚えておいて、クラス/オブジェクトが直列化されるとその宣言をドロップする必要があります。
からオブジェクトの初期化differesを直列化復元それ自体で組成を酸っぱくすると、私はその非常に便利なデコレータだとは思わない。 – tribbloid
Python pickleドキュメントの状態: '__getstate __()メソッドがない場合、インスタンスの__dict__はpickle'されます。だからあなたは単にスーパークラス '__dict__'を自分でpickle/unpickleすることができます。 デコレータでしかこのようなプロパティを扱うことはできません...うーん、わかりません – agg3l