通過一個小例子來理解變量在計算機內存中的表示~
當我們寫:
a = 'ABC'
1
時,Python解釋器干了兩件事情:
1、在內存中創建了一個'ABC'的字符串;
2、在內存中創建了一個名為a的變量,並把它指向'ABC'。
1
2
3
我們也可以把一個變量a賦值給另一個變量b,這個操作實際上是把變量b指向變量a所指向的數據,例如下面的代碼:
a = 'ABC'
b = a
a = 'XYZ'
print(b)
1
2
3
4
最后一行打印出變量b的內容到底是’ABC’呢還是’XYZ’?
如果從數學意義上理解,就會錯誤地得出b和a相同,也應該是’XYZ’,但實際上b的值是’ABC’!
現在我們一行一行地執行代碼,就可以看到到底發生了什么事:
1、執行a = ‘ABC’,解釋器創建了字符串’ABC’和變量a,並把a指向’ABC’:
2、執行b = a,解釋器創建了變量b,並把b指向a指向的字符串’ABC’:
3、執行a = ‘XYZ’,解釋器創建了字符串’XYZ’,並把a的指向改為’XYZ’,但b並沒有更改:
所以最后打印變量b的結果自然是’ABC’了。
下面是檢驗結果:
---------------------
作者:another靜靜
來源:CSDN
原文:https://blog.csdn.net/yj928674542/article/details/76269531
版權聲明:本文為博主原創文章,轉載請附上博文鏈接!