Python字符串替換筆記主要展示了如何在Python中替換字符串。Python中有以下幾種替換字符串的方法,本文主要介紹前三種。
Python replace方法把字符串中的old(舊字符串) 替換成new(新字符串),如果指定第三個(gè)參數(shù)max,則設(shè)置替換次數(shù)不超過(guò) max 次。
(資料圖)
str.replace(old, new[, max])
示例1
在該示例中,出現(xiàn)的兩個(gè)單詞Hello都被替換為Hi。
#原字符msg = "Hello world! Hello Python!" # 替換字符,字符串直接調(diào)用replace方法msg2 = msg.replace("Hello", "Hi") print(msg2)#輸出Hi world! Hi Python!
示例2
可以直接str.replace方法。它將我們進(jìn)行替換的字符串作為第一個(gè)參數(shù)。結(jié)果和示例1一樣。
msg = "Hello world! Hello Python!" msg2 = str.replace(msg, "Hello", "Hi") print(msg2)#輸出Hi world! Hi Python!
示例3
我們可以用換行符替換每個(gè)逗號(hào),并設(shè)置替換次數(shù)
data = "1,2,3,4,5" # 替換次數(shù)為3次data2 = data.replace(",", "\n", 3) print(data2)#輸出1234,5
示例4
在該示例中,我們替換最后一次出現(xiàn)的單詞Hello。需要結(jié)合Python rfind()方法。rfind()方法是指返回字符串最后一次出現(xiàn)的位置。
msg = "Hello world! Hello Python!" # Python rfind()返回字符串最后一次出現(xiàn)的位置idx = msg.rfind("Hello")print(idx) # 提取前一部分字符不替換,取后一部分字符進(jìn)行替換# 這里用到了字符串切片的方式msg2 = msg[:idx] + str.replace( msg[idx:] , "Hello", "Hi") print(msg2)#輸出13Hello world! Hi Python!
示例5
我們可以將replace方法鏈接起來(lái)進(jìn)行多次替換。
msg = "Hello world! Hello Python!" msg2 = msg.replace("Hello", "Hi").replace("!",".") print(msg2)#輸出Hi world. Hi Python.
Python的translate函數(shù)與replace函數(shù)一樣,用于替換字符串的一部分。Translate只能處理單個(gè)字符,但translate可以同時(shí)進(jìn)行多個(gè)替換任務(wù)。在使用translate函數(shù)進(jìn)行轉(zhuǎn)換之前。需要一個(gè)翻譯表table,翻譯表用于表示字符的替換關(guān)系,這個(gè)翻譯表可以通過(guò)maketrans()方法獲得。這個(gè)翻譯表可翻譯字符數(shù)為256,翻譯表中的字符都要包含在ASCII碼表(含擴(kuò)展)中。translate()方法語(yǔ)法為:
str.translate(table)
示例1
msg = "Hello world! Hello Python!" # intab中的字符與outtab中的字符一一對(duì)應(yīng)intab = "aeiou"outtab = "12345"# 制作翻譯表trantab = str.maketrans(intab, outtab) # trantab中的字符都會(huì)用ASCII碼表示print(trantab)#Python小白學(xué)習(xí)交流群:711312441 msg2 = msg.translate(trantab) print(msg2)#輸出{97: 49, 101: 50, 105: 51, 111: 52, 117: 53}H2ll4 w4rld! H2ll4 Pyth4n!
我們可以使用正則表達(dá)式來(lái)替換字符串。Python的re庫(kù)就是常用的正則表達(dá)式匹配庫(kù)(建議學(xué)一學(xué)很有用)。re庫(kù)使用見(jiàn)模式匹配與正則表達(dá)式筆記。這里主要使用re.sub函數(shù)替換字符串。re.sub()方法需要傳入兩個(gè)參數(shù)。第一個(gè)參數(shù)是一個(gè)字符串,用于取代發(fā)現(xiàn)的匹配。第二個(gè)參數(shù)是一個(gè)字符串,即正則表達(dá)式。sub()方法返回替換完成后的字符串。
示例1
import re msg = "Hello world! Hello Python!"# 設(shè)置要替換的字符namesRegex = re.compile(r"Hello")# 用"Hi"替換msg中已經(jīng)設(shè)置好要替換的字符namesRegex.sub("Hi", msg) #輸出 "Hi world! Hi Python!"
關(guān)鍵詞:
Python字符串替換筆記主要展示了如何在Python中替換字符串。Python...
喜笑顏開(kāi)!字母哥被問(wèn)加盟勇士,不斷重復(fù),被指聯(lián)手庫(kù)里無(wú)敵,勇士,...
掘金VS湖人G2前瞻:掘金捍衛(wèi)主場(chǎng),湖人變陣能否扳平比分?,湖人,濃...
湖凱輸首戰(zhàn)能會(huì)師總決賽嗎?輿論普遍不看好3原因阻黃綠大戰(zhàn)上演,湖...
(責(zé)編:王震、呂騫) tjewm{width:100%;text-align:center;margin:3...
全國(guó)勞模、全國(guó)技術(shù)能手、全國(guó)五一勞動(dòng)獎(jiǎng)?wù)芦@得者、中央企業(yè)技術(shù)能...
同花順金融研究中心5月18日訊,有投資者向賽為智能提問(wèn),在人工智能...
雪中悍刀行txt精校版,雪中悍刀行txt全集下載完整版這個(gè)很多人還不...
雪中悍刀行txt下載,雪中悍刀行txt精校全本這個(gè)很多人還不知道,現(xiàn)在...
韋小寶的七個(gè)老婆哪個(gè)最好,韋小寶的七個(gè)老婆排名這個(gè)很多人還不知...
斗破蒼穹銀宗在線閱讀,斗破蒼穹之銀宗肆虐這個(gè)很多人還不知道,現(xiàn)在...
時(shí)代廣場(chǎng)的蟋蟀讀書(shū)卡,時(shí)代廣場(chǎng)的蟋蟀讀書(shū)筆記這個(gè)很多人還不知道,...
直播吧5月18日訊?2023MSI勝者組決賽T1vsJDG的比賽將于今日20點(diǎn)開(kāi)賽...
2023倫敦MSI淘汰賽,昨日賽程GEN3-0橫掃C9,挺進(jìn)下一輪交手BLG。GEN...
英雄聯(lián)盟DRX戰(zhàn)隊(duì)世界賽冠軍皮膚公布,Deft選手在直播時(shí)看自己冠軍皮...
今日Uzi妻子奧咪咪更新微博,分享自家給Uzi的男性好友選520禮物,并...
近日EDG戰(zhàn)隊(duì)輔助選手Meiko開(kāi)播打韓服排位,在其中一盤(pán)對(duì)局中操刀卡...
5月18日,中國(guó)社會(huì)科學(xué)院財(cái)經(jīng)戰(zhàn)略研究院對(duì)外發(fā)布《平臺(tái)社會(huì)經(jīng)濟(jì)價(jià)值...
電商報(bào)快訊:5月18日消息,連連國(guó)際服貿(mào)業(yè)務(wù)全新的產(chǎn)品界面于今日上...
駕乘險(xiǎn)和座位險(xiǎn)聽(tīng)上去名字差不多,好像都是屬于汽車(chē)保險(xiǎn),其實(shí)本質(zhì)...
并未出席聯(lián)盟GM會(huì)議勇士功勛GM離隊(duì)成定局爛攤子甩掉再回歸嗎?,庫(kù)里...
拒絕頂薪續(xù)約!第一張多米諾骨牌倒下!12年4冠的他要走了,勇士,庫(kù)里...
小波特:我們見(jiàn)識(shí)過(guò)對(duì)手防約基奇的所有方式八村來(lái)也不是問(wèn)題,湖人,...
曝明日西決G2湖人八村壘有望首發(fā)出戰(zhàn),湖人,施羅德,八村壘,明日西決,...
23+3+8!打著打著,居然變成湖人第三巨頭,4年1億估計(jì)都打不住了,湖...
本期債券發(fā)行金額上限為人民幣10億元,募集資金將全部用于償還發(fā)行...
新北洋漲停收盤(pán),收盤(pán)價(jià)8 13元。該股于13點(diǎn)3分漲停,未打開(kāi)漲停,...
東風(fēng)快遞是什么意思,東風(fēng)快遞什么梗這個(gè)很多人還不知道,現(xiàn)在讓我們...
北京火鍋排名前十強(qiáng),中國(guó)火鍋排名前十強(qiáng)這個(gè)很多人還不知道,現(xiàn)在讓...
小孩用的祛疤膏哪個(gè)牌子好,小孩子用的除疤膏可以推薦一下嗎這個(gè)很...
廣告
X 關(guān)閉
廣告
X 關(guān)閉