如果Python字符串是不可变的,那么如何改变它,如下所示:
a = "abc"
print a
a = "cde"
print a
Outputs:
abc
cde
这实际上是创建一个新变量并将 a 更改为指向该变量吗?
Python 字符串are不可变的。你所做的只是重新分配a
具有两个不同字符串的变量,与不变性无关。
在显示的代码中没有创建新变量,只是a
。而在作业中,a
每次都指向不同的字符串。要了解字符串是不可变的,请查看以下示例:
a = 'abxde'
b = a.replace('x', 'c')
a
=> 'abxde'
b
=> 'abcde'
如你看到的,a
没有被修改过replace()
方法,相反,该方法创建了一个新字符串,我们将其分配给b
,这就是替换字符串结束的地方。所有执行更改的字符串方法都是这样的:它们不会就地修改原始字符串,而是创建并返回一个新字符串。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)