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

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

Mary-Kate Olsen
Mary-Kate Olsenオリジナル
2024-12-14 11:50:17434ブラウズ

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 サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。