一、 引言
在前面章節已經引入介紹了類變量和實例變量,類體中定義的變量為類變量,默認屬於類本身,實例變量是實例方法中定義的self對象的變量,對於每個實例都是獨有數據,而類變量是該類所有實例共享的屬性和方法。
二、 實例變量的定義方式
1. Python變量的本質是被賦值,實例變量是在實例方法內第一次通過self方式賦值來定義,該實例方法不一定是構造方法,只要是實例方法中通過self給一個未定義的變量賦值都是定義一個實例變量。不過由於構造方法在實例創建是即執行,因此在實例定義時就需要初始化的實例變量可以通過構造方法賦值來定義;
2. 實例變量在類定義外訪問時,可以通過”實例對象.實例變量”方式訪問,包括賦值,如果通過”實例對象.實例變量”方式給一未定義變量賦值,也是定義一個實例變量;
3. 任何時候通過以上兩種方式給一個未定義的實例變量賦值時,都是新定義實例變量,即實例變量是可以動態增加的,動態增加的實例變量不影響其他實例變量,在實例對象釋放后就不再有作用;
注意:如果實例方法中的變量沒有帶self,則賦值對應變量時變為了給方法內的局部變量賦值。
三、 實例變量的訪問方式
實例變量定義后,可以通過兩種方式進行讀寫:
1. 直接在實例方法中通過self方式訪問;
2. 在實例定義代碼內通過“實例名.變量名”方式訪問。
本節老猿介紹了實例變量賦值的方法,內容比較重要但容易理解,下節將介紹有關案例,請大家結合下節的案例好好理解。
老猿Python(https://blog.csdn.net/LaoYuanPython)系列文章用於逐步介紹老猿學習Python后總結的學習經驗,這些經驗有助於沒有接觸過Python的程序員可以很容易地進入Python的世界。
歡迎大家批評指正,謝謝大家關注!