Python - 字符串不可变性



在 Python 中,字符串数据类型是不可变的。这意味着字符串值无法更新。我们可以尝试更新字符串的一部分来验证这一点,但我们会得到一个错误。

# Can not reassign 
t= "Tutorialspoint"
print type(t)
t[0] = "M"

运行以上程序后,输出如下:


t[0] = "M"
TypeError: 'str' object does not support item assignment

我们可以通过检查字符串中字母的位置的内存地址来进一步验证这一点。

.
x = 'banana'

for idx in range (0,5):
    print x[idx], "=", id(x[idx])

运行以上程序后看到结果如下。正如你在上面看到的,a 和 a 指向相同的位置。同样,N 和 N 也指向相同的位置。

b = 91909376
a = 91836864
n = 91259888
a = 91836864
n = 91259888
广告