2015-10-17 106 views
2

我想區分我第一次從其他所有時間發起的課程。我創建了一個實例屬性並將其值設置爲True。我應該如何爲所有後續實例將該屬性值設置爲False?如何變更/修改實例屬性?

class Cool(Dude): 

    def __init__(self): 
     self.coolnesscheck = True 

回答

1

您可以使用class屬性來指示是否創建了第一個對象。示例 -

class Cool: 
    __firstinit = True 

    def __init__(self): 
     self.coolnesscheck = Cool.__firstinit 
     Cool.__firstinit = False 

我在前面加上名義向__介紹Name Mangling,使屬性是不容易在類的外部訪問。

+0

好吧,是啊是正確的。完成 –

+0

謝謝,這工作! – dxbmozzarella

+0

很高興我能幫到你! :-)。如果您覺得答案是有幫助的,我還想通過點擊答案左側的勾號來請求您接受答案(您認爲最有幫助的答案),這對社區有幫助。 –

0

使用一個類的屬性,並將其設置爲False,當你實例化類的一個對象:

>>> class Cool: 
...  coolnesscheck = True 
...  def __init__(self): 
...   self.coolnesscheck = Cool.coolnesscheck 
...   Cool.coolnesscheck = False 
... 
>>> Cool.coolnesscheck 
True 
>>> a = Cool() 
>>> Cool.coolnesscheck 
False 
>>> a.coolnesscheck 
True 
>>> b = Cool() 
>>> Cool.coolnesscheck 
False 
>>> b.coolnesscheck 
False