Python底部実装方法詳細
この文章は主にPythonの底のカプセル化の実現方法を紹介しています。例コードで紹介された非常に詳細で、皆さんの学習や仕事に対して一定の参考学習価値を持っています。必要な友達は下記を参考にしてください。
実際には、pythonパッケージの特性は、純粋に"投機的な巧妙さ"の実装は、クラスのオブジェクトは、プライベートメソッドとプロパティを直接呼び出すことができない理由は、下の実装のため、pythonこっそりとそれらの名前を変更します。
pythonが下の階で実現した時、それらの名前をこっそりと「_」に変えました。類名__属性(メソッド)「の書式」
以上が本文の全部です。皆さんの勉強に役に立つように、私たちを応援してください。
実際には、pythonパッケージの特性は、純粋に"投機的な巧妙さ"の実装は、クラスのオブジェクトは、プライベートメソッドとプロパティを直接呼び出すことができない理由は、下の実装のため、pythonこっそりとそれらの名前を変更します。
pythonが下の階で実現した時、それらの名前をこっそりと「_」に変えました。類名__属性(メソッド)「の書式」
class Person:
def setname(self, name):
if len(name) < 3:
raise ValueError(' 3!')
self.__name = name
def getname(self):
return self.__name
# name setter getter
name = property(getname, setname)
def setage(self, age):
if age < 100:
self.__age = age
else:
raise ValueError(' 100!')
def getage(self):
return self.__age
# age getter setter
age = property(getage, setage)
#
def __display(self):
print(self.__name, " ", self.__age, " 。")
xiaobai = Person()
xiaobai.name = "xiaobai"
xiaobai.age = 20
# display()
xiaobai._Person__display()
xiaobai 20 。
まとめ:python類のすべての属性と方法は共有されています。pythonの下にクラスの属性や種類の方法の名称を変更したいなら、それを隠します。名前の前に二重下線を付けるだけです。いいです。以上が本文の全部です。皆さんの勉強に役に立つように、私たちを応援してください。