我认为用一个简单的例子来解释我试图实现的东西更容易。请看下面的代码:方法链接和访问变量
class Person(object):
def __init__(self):
self._age = None
self._gender = None
def age(self, value):
self._age = value
return self
def gender(self, value):
self._gender = value
return self
p = Person().age(10).gender("male")
assert p.age == 10
assert p.gender == "male"
显然因为属性指的是方法,而不是变量断言失败。 我试图搞乱__getattribute__方法,以便它解决“年龄”为“_age”,但我似乎无法找到一种方式,两种情况下工作,我不完全相信,它可能在所有,但Python已之前感到惊讶。
如果你真的想用数据隐藏,这里是一个[示例](http://stackoverflow.com/questions/6304040 /现实世界中的示例中关于如何使用属性功能在python/42300481#42300481)应该让你开始的属性。 – Mike