Python字符串拼接、截取及替換方法總結分析
本文實例講述了Python字符串拼接、截取及替換方法。分享給大家供大家參考,具體如下:
python字符串連接
python字符串連接有幾種方法,我開始用的第一個方法效率是最低的,后來看了書以后就用了后面的2種效率高的方法,跟大家分享一下。
先介紹下效率比較低的方法:
a = ['a','b','c','d'] content = '' for i in a: content = content + i print content
content的結果是:'abcd'
后來我看了書以后,發(fā)現(xiàn)書上說的是python連接字符串,特別是在循環(huán)連接字符串的時候,他每次連接一次,就要重新開辟空間,然后把字符串連接起來,再放入新的空間,再一次循環(huán),又要開辟新的空間,把字符串連接起來放入新的空間,如此反復,內存操作比較頻繁,每次都要計算內存空間,然后開辟內存空間,再釋放內存空間,效率非常低,你也許操作比較少的數據的時候看不出來,感覺影響不大,但是你碰到操作數據量比較多的時候,這個方法就要退休了,還是看看下面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返回一個新的對象,結果包含了以這對偏移標識的連續(xù)的內容,左邊的開始是包含了下邊界,比如上面的結果包含了s[1]的值l,而取到的最大范圍不包括上邊界,就是s[5]的值p
字符串替換
python 字符串替換是python操作字符串的時候經常會碰到的問題,這里簡單介紹下字符串替換方法。
python 字符串替換可以用2種方法實現(xiàn):
1.用字符串本身的replace方法
a.replace('word','python')
輸出的結果是hello python
2.用正則表達式來完成替換:
import re strinfo = re.compile('word') b = strinfo.sub('python',a) print b
輸出的結果也是hello python
更多關于Python相關內容感興趣的讀者可查看本站專題:《Python字符串操作技巧匯總》、《Python入門與進階經典教程》及《Python文件與目錄操作技巧匯總》
希望本文所述對大家Python程序設計有所幫助。
相關文章
Python利用三層神經網絡實現(xiàn)手寫數字分類詳解
這篇文章主要介紹了如何設計一個三層神經網絡模型來實現(xiàn)手寫數字分類。本文給大家介紹的非常詳細,感興趣的小伙伴快來跟小編一起學習一下2021-11-11Python3.9環(huán)境搭建RobotFramework的詳細過程
Robot Framework是一個基于Python的,可擴展的關鍵字驅動的測試自動化框架,用于端到端驗收測試和驗收測試驅動開發(fā)(ATDD),這篇文章主要介紹了Python3.9環(huán)境搭建RobotFramework的詳細過程,需要的朋友可以參考下2023-01-01Python入門教程(三十九)Python的NumPy安裝與入門
這篇文章主要介紹了Python入門教程(三十九)Python的NumPy安裝與入門,NumPy 是一個Python包,它是一個由多維數組對象和用于處理數組的例程集合組成的庫,,需要的朋友可以參考下2023-05-05