pythonはproperty関数に基づいて属性を定義します。
この文章は主にpythonがproperty()関数に基づいて属性を定義することを紹介しています。ここではサンプルコードを通じて紹介された非常に詳細で、皆さんの学習や仕事に対して一定の参考学習価値があります。必要な友達は以下のように参照してください。
通常の場合、クラスに含まれる属性は隠れていなければならず、クラスによって提供される方法だけを通じて間接的にクラス属性へのアクセスと操作を可能にする。
通常の場合、クラスに含まれる属性は隠れていなければならず、クラスによって提供される方法だけを通じて間接的にクラス属性へのアクセスと操作を可能にする。
class Person:
#
def __init__(self, name):
self.name = name
# name
def setname(self, name):
self.name = name
# name
def getname(self):
return self.name
# name
def delname(self):
self.name = "xxx"
xiaobai = Person("xiaobai")
# name
print(xiaobai.getname())
# name
xiaobai.setname("xiaohei")
print(xiaobai.getname())
# name
xiaobai.delname()
print(xiaobai.getname())
xiaobai
xiaohei
xxx
pythonにはproperty()関数が提供されており、クラスのパッケージ原則を破壊しない前提で、開発者に相変わらず「クラスのオブジェクト・属性」を使用させることでクラスの属性を操作させることができます。
class Person:
#
def __init__(self, name):
self.__name = name # ( ) ,
# name
def setname(self, name):
self.__name = name
# name
def getname(self):
return self.__name
# name
def delname(self):
self.__name = "xxx"
# name property()
name = property(getname, setname, delname, ' ')
#
print(Person.name.__doc__)
help(Person.name)
xiaobai = Person("xiaobai")
# name
print(xiaobai.name)
# name
xiaobai.name = "xiaohei"
print(xiaobai.name)
# name
del xiaobai.name
print(xiaobai.name)
Help on property:
xiaobai
xiaohei
xxx
以上が本文の全部です。皆さんの勉強に役に立つように、私たちを応援してください。