質問

これらのメソッドはpickle / unpickling用であり、reduce組み込み関数とは関係がないことを理解していますが、2の違いは何ですか、なぜ両方が必要なのですか?

役に立ちましたか?

解決

ドキュメント

  

提供されている場合、酸洗時に    __ reduce __()はnoで呼び出されます   引数、および   文字列またはタプル。

一方、

  

時々知っていると便利です   実装時のプロトコルバージョン    __ reduce __ 。これは   というメソッドを実装する   の代わりに __ reduce_ex __    __ reduce __ __ reduce_ex __ 、それが   存在し、優先的に呼び出されます    __ reduce __ (引き続き提供できます    __ reduce __ 後方へ   互換性)。 __ reduce_ex __   メソッドは単一で呼び出されます   整数引数、プロトコル   バージョン。

握りしめながら、ガイドは次のように述べていますこれはクリーンアップできる領域です。

他のヒント

__ reduce_ex __ は、 __ reduce __ が本来あるべきだったが、決してなっていないものです。 __ reduce_ex __ __ reduce __ と同様に機能しますが、pickleプロトコルは渡されます。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top