Python變量賦值的秘密


Python中,我們令一個變量等於另外一個變量時,並不是把值傳遞給它,而是直接把指向的地址更改了。我們想要查看一個變量在內存中的地址,可以通過id(變量) 來查看。我們通過一個小例子來看看這個有趣的過程。

>>> x = 12
>>> y= 13
>>> id(x)
1865402384
>>> id(y)
1865402416
>>> x = y
>>> id(x)
1865402416
>>> id(y)
1865402416

首先給x變量賦值為12,y變量賦值為13,我們用id(變量)分別查看x和y在內存中的位置。上面顯示分別為1865402384和1865402416。然后我們令x = y后,再查看一下它們在內存中的位置,發現x 和 y都指向了1865402416。由此可見,在python中,我們賦值的方式和C語言有所不同,c語言直接更改x那塊內存里面的值,而Python直接改變x的指向,這讓我想起了指針。

我們接着嘗試一下,繼續在這里輸入下面的代碼

>>> y = 12
>>> id(y)
1865402384

天!發生了什么??y在內存中的地址又變成1865402384了,准確說,y又指向了1865402384這塊內存區域了。這樣一看,和C語言的指針還真的很像呢。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM