理解 Python 變數:引用與指標
通常認為 Python 中的變數只是指標。然而,更深入的理解表明這並不完全準確。
考慮以下程式碼片段:
i = 5 j = i j = 3 print(i)
基於變數是指標的假設,人們可能會預期輸出為3、假設j中儲存的指標已經被重新賦值。然而,實際輸出是 5。
要解決此差異,至關重要的是要認識到 Python 中的變數不是傳統意義上的指標。相反,它們充當記憶體中物件的引用。
Python 中的引用
引用是指向物件的記憶體位置。對於整數等基本資料類型(例如,i = 5),變數儲存實際值。但是,對於像列表這樣的可變物件(例如,i = [1,2,3]),變數會在記憶體中儲存對物件的參考。
基於物件類型的行為
當一個新變數(例如,j)被指派對現有變數(例如,i)的引用時,兩個變數都指向相同的底層目的。透過任一變數所做的更改都會反映在兩個變數中。
列表範例
考慮程式碼片段:
i = [1,2,3] j = i i[0] = 5 print(j)
在這種情況下,輸出是[5,2,3]。這表明,當透過 i 修改索引 0 處的清單元素時,變更也會反映在 j 中,因為它們都引用同一個清單。
結論
Python 中的變數充當引用而不是指標。它們允許多個變數指向同一個對象,從而實現資料共享和高效的記憶體使用。理解這個概念對於使用 Python 進行有效程式設計至關重要。
以上是Python 變數:引用還是指標?的詳細內容。更多資訊請關注PHP中文網其他相關文章!