ホームページ > バックエンド開発 > Python チュートリアル > ゲッターとセッターを Python で実装するにはどうすればよいですか?

ゲッターとセッターを Python で実装するにはどうすればよいですか?

Mary-Kate Olsen
リリース: 2024-12-14 11:50:17
オリジナル
441 人が閲覧しました

How to Pythonically Implement Getters and Setters?

ゲッターとセッターの Python の実践

Python でゲッター メソッドとセッター メソッドを使用する場合、次のような Python のアプローチを採用することが重要です。言語のベストプラクティス。明示的な get_property() および set_property() メソッドを使用する代わりに、手動実装が必要です:

def set_property(property, value):  
def get_property(property):  
ログイン後にコピー

または、オブジェクト プロパティを介して属性を直接設定および取得します:

object.property = value  
value = object.property
ログイン後にコピー

推奨される Python メソッドプロパティ デコレータを利用してゲッターとセッターを定義します。この手法は、インスタンス変数にアクセスするための簡潔で直感的なインターフェイスを提供します。

プロパティ デコレータ:

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
ログイン後にコピー

使用法:

インスタンスを作成します。クラス:

c = C()
ログイン後にコピー

プロパティの設定:

c.x = 'foo'  # setter called
ログイン後にコピー

プロパティの取得:

foo = c.x    # getter called
ログイン後にコピー

プロパティの削除:

del c.x      # deleter called
ログイン後にコピー

Python のプロパティ デコレータを採用することで、より Python 的でエレガントなゲッター機能とセッター機能を実現できます。構文、コードの明確さを維持し、プロパティ管理を簡素化します。

以上がゲッターとセッターを Python で実装するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート