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)使用序列切片方式
字符串本身也是一種序列,可以使用序列切片的方式。
string = 'abcdafg'
newstr = string[:4] + 'e' + string[5:]
print(string, newstr, sep='\n')
輸出結果:
abcdafg
abcdefg




發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章