python變量、對象和引用你真的明白了嗎
變量、對象和引用
Python不像C++,Java等語言一樣,他們可以不用事先聲明變量類型而直接對變量進行賦值。對Python語言來講,對象的類型和內存都是在運行時確定的。這也是為什么我們稱Python語言為動態類型的原因
這里我們把動態類型可以簡單的歸結為對變量內存地址的分配是在運行時自動判斷變量類型並對變量進行賦值
例子
在 Python 中使用變量的時候不需要提前聲明變量及其類型,我們這里以a = 1來舉例:
這里變量為a,1為對象。
注意兩點:
1.變量無類型,對象有類型:「類型」這個概念不是存在於變量中,而是存在於對象中。變量本身就是通用的,它只是恰巧在某個時間點上引用了當時的特定對象而已。就比如說在表達式中,我們用的那個變量會立馬被它當時所引用的特定對象所替代。
2.變量引用對象:變量通過一根線,連着對象,變量用自己所擁有的能力,把對象和自己連接起來(指針連接對象空間),引用建立了變量和對象之間的映射關系,這就是引用。引用完成,就實現了賦值。
比如x = 7
總結:
變量是到內存空間的一個指針,也就是擁有指向對象連接的空間;
對象是一塊內存空間,內存空間里存儲它們所表示的值;
引用就是自動形成的從變量到對象的映射關系(指針)