次のコード:
class MyClass():
def test(self):
self.__x = 0
def __setattr__(self, name, value):
print name
def __getattr__(self, name):
print name
raise AttributeError(name)
x = MyClass()
x.test()
x.__y
出力:
_MyClass__x
__y
Traceback (most recent call last):
...
AttributeError: __y
「名前」が「属性の名前」であると記載されているドキュメントはまったく役に立ちませんが、何らかの理由で、設定するか取得するかによって異なります。
私が知りたいのは:
- 私はここで根本的に間違ったことをしていますか?
x
代わりに最初のケースを取得するにはどうすればよい_MyClass__x
ですか?