在Python中,字符串是不可变类型,即无法直接修改字符串的某一位字符。
因此改变一个字符串的元素需要新建一个新的字符串。
常见的修改方法有以下4种。
方法1:将字符串转换成列表后修改值,然后用join组成新字符串
1
2
3
4
5
6
7
8
9
10
11
|
>>> s = 'abcdef' #原字符串
>>> s1 = list (s) #将字符串转换为列表
>>> s1
[ 'a' , 'b' , 'c' , 'd' , 'e' , 'f' ] #列表的每一个元素为一个字符
>>> s1[ 4 ] = 'E' #将列表中的第5个字符修改为E
>>> s1[ 5 ] = 'F' #将列表中的第5个字符修改为E
>>> s1
[ 'a' , 'b' , 'c' , 'd' , 'E' , 'F' ]
>>> s = ''.join(s1) #用空串将列表中的所有字符重新连接为字符串
>>> s
'abcdEF' #新字符串
|
方法2: 通过字符串序列切片方式
1
2
3
4
5
6
7
|
>>> s = 'Hello World'
>>> s = s[: 6 ] + 'Bital' #s前6个字符串+'Bital'
>>> s
'Hello Bital'
>>> s = s[: 3 ] + s[ 8 :] #s前3个字符串+s第8位之后的字符串
>>> s
'Heltal'
|
方法3: 使用字符串的replace函数
1
2
3
4
5
6
7
|
>>> s = 'abcdef'
>>> s = s.replace( 'a' , 'A' ) #用A替换a
>>> s
'Abcdef'
>>> s = s.replace( 'bcd' , '123' ) #用123替换bcd
>>> s
'A123ef'
|
方法4: 通过给一个变量赋值(或者重新赋值)
1
2
3
4
5
6
7
8
9
|
>>> s = 'Hello World'
>>> s2 = ' 2017' #变量赋值
>>> s = s + s2
>>> s
'Hello World 2017'
>>> s = 'Hello World'
>>> s = 'Hello World 2017' #重新赋值
>>> s
'Hello World 2017'
|
总结
以上所述是小编给大家介绍的Python中修改字符串的四种方法,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对服务器之家网站的支持!
原文链接:https://blog.csdn.net/Mei_ZS/article/details/83656011