来源:芜湖达内IT培训学校时间:2021/5/30 17:50:41
学习python时字符串怎样修改
方法1:将字符串转换成列表后修改值,然后用join组成新字符串
>>> 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: 通过字符串序列切片方式
>>> s='Hello World'
>>> s=s[:6] + 'Bital' #s前6个字符串+'Bital'
>>> s
'Hello Bital'
>>> s=s[:3] + s[8:] #s个字符串+s第8位之后的字符串
>>> s
'Heltal'
方法3: 使用字符串的replace函数
>>> s='abcdef'
>>> s=s.replace('a','A') #用A替换a
>>> s
'Abcdef'
>>> s=s.replace('bcd','123') #用123替换bcd
>>> s
'A123ef'
方法4: 通过给一个变量赋值(或者重新赋值)
>>> s='Hello World'
>>> s2=' 2017' #变量赋值
>>> s=s+s2
>>> s
'Hello World 2017'
>>> s='Hello World'
>>> s='Hello World 2017' #重新赋值
>>> s
'Hello World 2017'
Python中如何修改字符串的值
Python中列表list中的值是可修改的,而元组和字符串的值是不可修改的。看下面的示例:
string = 'abcdafg'
string[4] = 'e'
print(string)
输出结果:
string[4] = 'e'
TypeError: 'str' object does not support item assignment
但在实际应用中,经常需要对字符串的值进行一些修改操作,解决方案有3种:
(1)使用字符串的replace函数
string = 'abcdafg'
newstr = string.replace('a', 'e')
print(string, newstr, sep='\n')
输出结果:
abcdafg
ebcdefg
可以看出,replace会生成一个新的字符串,原字符串仍然不变。replace会修改字符串中所有相关的子串。很多时候并不能满足我们的应用要求。
(2)将字符串转换成列表后修改值,然后用join组成新字符串
string = 'abcdafg'
newstr = list(string)
newstr[4] = 'e'
print(string, ''.join(newstr), sep='\n')
输出结果:
abcdafg
abcdefg
(3)使用序列切片方式
字符串本身也是一种序列,可以使用序列切片的方式。
http://saltriver.blog.163.com/blog/static/2260971542016525103755389/
string = 'abcdafg'
newstr = string[:4] + 'e' + string[5:]
print(string, newstr, sep='\n')
输出结果:
abcdafg
abcdefg
芜湖达内IT培训学校
版权所有:搜学搜课(www.soxsok.com)