理解Python 字串中的不變性
Python 字串通常被認為是不可變的,這讓許多人質疑為什麼使用“”將一個字串附加到另一個字串運算子出現修改原始字串。讓我們深入研究這種現象。
考慮以下程式碼:
<code class="python">a = "Dog" b = "eats" c = "treats" print(a, b, c) # Output: Dog eats treats print(a + " " + b + " " + c) # Output: Dog eats treats print(a) # Still Output: Dog a = a + " " + b + " " + c print(a) # Output: Dog eats treats</code>
將「Dog」指派給變數「a」後,您可以假設字串「Dog」是不可變的。但是,當您使用“”運算符附加字串文字時,它會建立一個包含組合內容的新字串物件。在這種情況下,創建了一個新的字串“Dog eats treats”,並且變數“a”被重新賦值以指向這個新字串。
因此,Python 字串的不變性體現在原始字串字串物件(在本例中為「Dog」)保持不變。但是,可以將變數指派為指向不同的字串對象,從而產生字串突變的錯覺。
以上是Python 字串真的不可變嗎?的詳細內容。更多資訊請關注PHP中文網其他相關文章!