python字符串的不可變性

python的字符串是不可變對象。所謂不可變對象是指一旦生成后不能被改變的對象。

<b>不可變對象有什么優點</b>:

  1. 可以提高性能,解釋器可以分配一段固定的內存,并且可以重用該對象。比如,CPython在實現中預先申請了所有的單字節字符,并且,如果字符串運算后的結果與運算前相同,就會返回運算前的字符串。
  2. python里面,字符串與數字一樣,被認為是表示思想的最基本材料。在Python里,沒有任何方法可以把數字8變成其它東西,同樣,也沒有辦法把"eight"這個字符串變成其它東西。
  3. 使用不可變數據結構,強調了一種無副作用的編程方式(函數式編程)。同時,如果多個變量引用了同一個字符串對象,不會出現修改了某個變量的值,而對另一個變量產生影響。

示例:

>>> b="1234"
>>> id(b)
53399088
>>> c="1234"
>>> id(c)
53399088
>>> b="111"
>>> id(b)
53396568
>>> id(c)
53399088
>>> id(b+"11")
52665120
>>> id(b)
53396568
最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容