PYTHON中的可变和不可变字符串
问题描述
我刚刚介绍了python中的可变结构和不可变结构。 在Python语言中写道,字符串是不变的,即我们不能更改它们 请考虑以下代码:
str1='Rohit'
str1.replace('R','M')
这给出了输出:
'Mohit'
现在,有人说是变量str1指向字符串‘RoHit’,在str1.place()之后,它指向‘MoHit’
请考虑以下代码:
'Rohit'.replace('R','M')
这也为我提供了输出:
'Mohit'
那么‘字符串是不可变的’是什么意思?
解决方案
字符串没有任何允许更改字符串值的方法。换句话说:字符串是不可变的。
当您调用str.replace
时,将生成并返回一个新的字符串。
>>> s1 = 'Rohit'
>>> s2 = s1.replace('R', 'M')
>>>
>>> s1
'Rohit'
>>> s2
'Mohit'
如您所见,s1
仍具有其原始值。
相关文章