在这样的课程中:
class F(object):
def __init__(self, x=0):
self.__x = x
def X(self):
return self.__getattribute___('__x')
是否可以使用__getattribute__
获取私有属性?做这样的Python 3说F has no attribute '__x'
。如果我的班级是这样的话:
class F(object):
def __init__(self, x=0):
self.x = x
@property
def x(self):
return self.__x
def X(self):
return self.__getattribute__('x')
__getattribute__
确实有用。我知道私人属性在课堂外是不可访问的;由于与此相关的事情,第一种情况不起作用吗?