我有一個關於python中的class屬性的問題。python class屬性
class base :
def __init__ (self):
pass
derived_val = 1
t1 = base()
t2 = base()
t2.derived_val +=1
t2.__class__.derived_val +=2
print t2.derived_val # its value is 2
print t2.__class__.derived_val # its value is 3
結果是不同的。我也使用id()函數來查找t2.derived_val和t2。 類 .derived_val具有不同的內存地址。 我的問題是derived_val是類的屬性。爲什麼在上面的例子中有所不同? 是因爲類的實例在類屬性旁邊複製自己的derived_val?