python中如何區分類變量與對象變量

class People:
    num1=111
    num2=222
    def __init__(self,num1):
        self.num1=num1

        print ("People " + " 被創建")
    def __del__(self):
        print ("People " + " 被析構")

if __name__=="__main__":
    obj1=People(333)
    print (obj1.num1) #對象的num1是333
    print (obj1.num2) #對象的num2沒有賦值就是類的num2
    print (People.num1) #類的num1仍然是111
    print (People.num2) #類的num2  222
    People.num2=123456  #這樣才能改變類變量num2
    print (People.num2)
    obj1=5 #左邊是引用 右邊是對象 引用爲零的對象就被回收
    print ("-----------------")

理解

寫在類剛開始的變量是屬於這個類的變量,而  self.name取到的或者設置的是對象的變量,但是當對象沒有某變量而類有那個變量時:self.name取到的是類變量

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章