我認爲用一個簡單的例子來解釋我試圖實現的東西更容易。請看下面的代碼:方法鏈接和訪問變量
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