如何访问Python属性后面的“private”变量?在python属性后面访问“private”变量
在下面的代码中,我得到了Hello World
而不是我期望的World World
。我猜想该属性具有不同的范围,导致self
在属性上与模块不同。如果是这样,有没有办法访问基础变量?或者是否有一种不同的习惯用于“班外的代码应该使用与班上的代码不同的getter”?
class Foo():
def __init__(self):
self._x = 'Hello'
self.x = 'World'
@property
def x(self):
return self._x
@x.setter
def x(self, val):
self._x = val
foo = Foo()
print(foo._x)
print(foo.x)
错过了就在我的面前。谢谢。 –
@QtotheC看到我的编辑,我的原始答案是误导。 – 101