抽象理解python中變量的定義過程


  關鍵詞:變量的定義、變量的刪除
  前言
     在python中,變量名真的只是一個名字而已,它維護的是一個地址,當這個地址變了,那么此時這個變量的指向也就變了,此時這個變量的值也就變了。這個變量可以指向一個整型變量,當然它也可以指向一個函數,當然它也可以指向其他的對象。
    python中"一切"皆對象 ,"一切"皆引用。(加上引號是為了防止出現萬一的情況)

1、變量的定義:

當在python中執行如下賦值語句的時候:

a = "laoliang"  # "laoliang"是一個字符串對象

這個語句在python中一旦執行:

①那么首先申請一個內存空間存放"laoliang"(如果" laoliang"不存在於內存的話);

②同時也為變量名a分配一個內存空間(如果a不存在於內存的話);

③接着讓a指向"laoliang"所在的內存空間,此時a中保存的是一個地址,即"laoliang"所在內存空間的地址。

 

 這就是python中變量的定義。

2、變量的刪除:

del a

分析:

  在執行上述語句刪除變量的時候,其實只是刪除了一個引用而已。如果變量desc所指向的對象的引用計數不為0,那么此時該對象仍然不會被刪除,此時只是變量的引用被刪除了而已。

3、特殊情況分析:

當在python中執行如下賦值語句的時候:

a = "laoliang"
b = "laowang"
a, b = b, a
(1)對於語句1和語句2,參考上一小節所分析的;
(2)對於語句3:
①這個語句在python中一旦執行,那么首先分析等號右邊的內容,查找右邊的b和a的值。通過查找可得a = "laoliang", b = "laowang";
②等號右邊的內容都找到之后,再分析左邊的。此時會讓a,b分別指向對應位置的新的值,即讓a = b = "laowang", b = a = "laoliang"
 
執行語句3之后的變化情況:
 

 

 

 

 

 

 

 
 


免責聲明!

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



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