python 可变 与 不可变类型
生活随笔
收集整理的這篇文章主要介紹了
python 可变 与 不可变类型
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
一、Python對象
見《Python 核心編程》
二、可變與不可變
python的數(shù)據(jù)類型和c不太一樣,有一種分類標準,可變(mutable)/不可變(immutable).我理解的可變,就是在內(nèi)存中的那塊內(nèi)容(value)是否可以被改變。如果是不可變的,在對對象本身操作的時候,必須在內(nèi)存的另外地方再申請一塊區(qū)域(因為老區(qū)域#不可變#),老的區(qū)域就丟棄了(如果還有其他ref,則ref數(shù)字減1,類似unix下的hard-link)。如果是可變的,對對象操作的時候,不需要再在其他地方申請內(nèi)存,只需要在此對象后面連續(xù)申請(+/-)即可,也就是它的address會保持不變,但區(qū)域會變長或者變短。
不可變類型:string,integer,tuple
>>> var1 = 1
>>> var2 = var1
>>> var1,var2
(1, 1)
>>> id(var1),id(var2) #同指同一內(nèi)存區(qū)域,id相同
總結(jié)
以上是生活随笔為你收集整理的python 可变 与 不可变类型的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Python中时间戳与时间字符串相互转换
- 下一篇: websocket python爬虫_p