在python中,字符串?dāng)?shù)據(jù)類型是不可變的。這意味著無(wú)法更新字符串值。 我們可以通過(guò)嘗試更新字符串的一部分來(lái)驗(yàn)證這一點(diǎn),這將會(huì)產(chǎn)生錯(cuò)誤。
# Can not reassign
t= "Yiibai"
print type(t)
t[0] = "M"
當(dāng)我們運(yùn)行上面的程序時(shí),將會(huì)得到以下錯(cuò)誤提示 -
t[0] = "M"
TypeError: 'str' object does not support item assignment
我們可以通過(guò)檢查字符串字母位置的內(nèi)存位置地址來(lái)進(jìn)一步驗(yàn)證這一點(diǎn)。
x = 'banana'
for idx in range (0,5):
print x[idx], "=", id(x[idx])
當(dāng)運(yùn)行上面的程序時(shí),將會(huì)得到以下輸出。 正如可以看到上面的a
和指向同一內(nèi)存位置。N
和N
也指向相同的位置。
b = 91909376
a = 91836864
n = 91259888
a = 91836864
n = 91259888