# 零基礎學python-7.4 修改字符串實例總結
我們知道python里面字符串是不可原處直接修改的,為了是原來的字符串修改過來,我們有一下方法:
1.分片和合并
~~~
>>>?a='abcde'??
>>>?b='fghij'??
>>>?c=a[1:3]+b[2:5]+'?end'??
>>>?c??
'bchij?end'??
>>>???
~~~
2.replace()
~~~
>>>?a='aaabbbcccddd'??
>>>?a.replace?('aaa','xxx')??
'xxxbbbcccddd'??
>>>???
~~~
3.結合find()和分片
~~~
>>>?a='aaaxbbbcccxddd'??
>>>?where?=?a.find?('x')??
>>>?where??
3??
>>>?a[:where]+'ttttt'+a[where:]??
'aaatttttxbbbcccxddd'??
>>>???
~~~
上面的三種方法,雖然都修改了源字符串,其實它們沒有直接在原處修改,只是重新創建一個新的字符串對象
4.使用可修改的列表
可能你需要修改超長文本多個地方,這時候上面的方法性能不好,所以需要轉換為可以修改的對象-列表
~~~
>>>?a='aaaxbbbcccxddd'??
>>>?b=list(a)??
>>>?b??
['a',?'a',?'a',?'x',?'b',?'b',?'b',?'c',?'c',?'c',?'x',?'d',?'d',?'d']??
>>>?b[2]='x'??
>>>?b[7]='x'??
>>>?b??
['a',?'a',?'x',?'x',?'b',?'b',?'b',?'x',?'c',?'c',?'x',?'d',?'d',?'d']??
>>>?a=''.join?(b)??
>>>?a??
'aaxxbbbxccxddd'??
>>>???
~~~
就說到這里,謝謝大家
- 前言
- 零基礎學python-7.1 python中的字符串簡介與常用函數
- 零基礎學python-7.2 字符串常量
- 零基礎學python-7.3 字符串的一般使用
- 零基礎學python-7.4 修改字符串實例總結
- 零基礎學python-7.5 文本解析
- 零基礎學python-7.6 字符串格式化表達式
- 零基礎學python-7.7 字符串格式化方法(1)
- 零基礎學python-7.7 字符串格式化方法(2)
- 輕松python文本專題-單獨處理字符串每個字符的方法匯總
- 輕松python文本專題-字符與字符值轉換
- 輕松python文本專題-判斷對象里面是否是類字符串(推薦使用isinstance(obj,str))
- 輕松python文本專題-字符串對齊
- 輕松python文本專題-去掉字符串前后空格
- 輕松python文本專題-拼接、合并字符串
- 輕松python文本專題-字符串逐字符反轉以及逐單詞反轉
- 輕松python文本專題-maketrans和translate
- 輕松python文本專題-字符串開頭或者結尾匹配