ゲッターとセッターへの Python 的アプローチ
Python では、オブジェクト属性のゲッターとセッターを実装するさまざまな方法があります。前述のアプローチのうち、Python ソリューションには、Python の組み込み property() デコレーターの活用が含まれます。
property() デコレーターを使用すると、次のようなプロパティ メソッドを作成できます。属性のように機能しますが、入力検証やキャッシュなどの追加の動作を行うこともできます。以下に例を示します:
class C(object): def __init__(self): self._x = None @property def x(self): """I'm the 'x' property.""" print("getter of x called") return self._x @x.setter def x(self, value): print("setter of x called") self._x = value @x.deleter def x(self): print("deleter of x called") del self._x
この例では:
x を使用するにはプロパティを使用するには、通常の属性のようにアクセスするだけです:
c = C() c.x = 'foo' # setter called foo = c.x # getter called del c.x # deleter called
このアプローチは、Python の規約に準拠しながらゲッターとセッターを実装するクリーンで拡張可能な方法を提供します。
以上が`property()` デコレーターを使用してゲッターとセッターを Python で実装するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。