0
ほとんどすべてのクラスが継承できないライブラリで多くの作業を行いますが、それらを拡張したいと考えています。Pythonのラッパークラスを自動生成する
このクラスAは継承不可能です。私はしばしば、_obj
上で同じメソッドを呼び出す前に、いくつかの動作を実行するために、すべてのメソッドとすべての属性(@property
)を手動で実装して、属性としてself._obj
を格納することによって "ラッパー"クラスを作成します。 Here's an example。
継承できないクラスを拡張するための良い方法がありますか、少なくともこの退屈なプロセスを自動化するための方法はありますか?
既存のメソッドに追加したい場合は、どのように機能しますか?私はそれらを古い方法で実装していますか?また、書き込める属性に '__setattr__'が必要ですか? –
「既存のメソッドに追加する」の例を挙げられますか? –
いくつかの属性をラッピングしています。私は '@ property.setter'を使っています。 GitHubのリンク先ファイルを参照してください。 –