本文執行個體講述了Python字串拼接、截取及替換方法。分享給大家供大家參考,具體如下:
python字串串連
python字串串連有幾種方法,我開始用的第一個方法效率是最低的,後來看了書以後就用了後面的2種效率高的方法,跟大家分享一下。
先介紹下效率比較低的方法:
a = ['a','b','c','d']content = ''for i in a:content = content + iprint content
content的結果是:'abcd'
後來我看了書以後,發現書上說的是python連接字串,特別是在迴圈連接字串的時候,他每次串連一次,就要重新開闢空間,然後把字串串連起來,再放入新的空間,再一次迴圈,又要開闢新的空間,把字串串連起來放入新的空間,如此反覆,記憶體操作比較頻繁,每次都要計算記憶體空間,然後開闢記憶體空間,再釋放記憶體空間,效率非常低,你也許操作比較少的資料的時候看不出來,感覺影響不大,但是你碰到操作資料量比較多的時候,這個方法就要退休了,還是看看下面2個比較先進的方法把。
先進方法1:
用字串的join方法:
a = ['a','b','c','d']content = ''content = ''.join(a)print content
content的結果:'abcd'
先進方法2:
用字串的替換預留位置替換
a = ['a','b','c','d']content = ''content = '%s%s%s%s' % tuple(a)print content
content的結果是:'abcd'
有興趣可以看看關於python字串有關的 python 字串替換 和 python 字串截取
字串截取
python的字串是有序集合,我們可以通過索引來提取想要擷取的字元,可以把python的字串也做為字串的列表就更好理解。
python的字串列表有2種取值順序
1.是從左至右索引預設0開始的,最大範圍是字串長度少1
s = 'ilovepython'
s[0]的結果是i
2.是從右至左索引預設-1開始的,最大範圍是字串開頭
s = 'ilovepython'
s[-1]的結果是n
上面這個是取得一個字元,如果你的實際要取得一斷字元的話,可以用到python 字串截取功能
比如:s = 'ilovepython'
s[1:5]的結果是love
當使用以冒號分隔的字串,python返回一個新的對象,結果包含了以這對位移標識的連續的內容,左邊的開始是包含了下邊界,比如上面的結果包含了s[1]的值l,而取到的最大範圍不包括上邊界,就是s[5]的值p
字串替換
python 字串替換是python操作字串的時候經常會碰到的問題,這裡簡單介紹下字串替換方法。
python 字串替換可以用2種方法實現:
1.用字串本身的replace方法
a.replace('word','python')
輸出的結果是hello python
2.用Regex來完成替換:
import restrinfo = re.compile('word')b = strinfo.sub('python',a)print b
輸出的結果也是hello python
更多關於Python相關內容感興趣的讀者可查看本站專題:《Python字串操作技巧匯總》、《Python入門與進階經典教程》及《Python檔案與目錄操作技巧匯總》
希望本文所述對大家Python程式設計有所協助。