最近有需求需要做一些文件內(nèi)容的替換,想到用Python去實(shí)現(xiàn),總結(jié)了一些方法;
創(chuàng)新互聯(lián)建站長(zhǎng)期為上千客戶提供的網(wǎng)站建設(shè)服務(wù),團(tuán)隊(duì)從業(yè)經(jīng)驗(yàn)10年,關(guān)注不同地域、不同群體,并針對(duì)不同對(duì)象提供差異化的產(chǎn)品和服務(wù);打造開放共贏平臺(tái),與合作伙伴共同營(yíng)造健康的互聯(lián)網(wǎng)生態(tài)環(huán)境。為保靖企業(yè)提供專業(yè)的網(wǎng)站設(shè)計(jì)、網(wǎng)站制作,保靖網(wǎng)站改版等技術(shù)服務(wù)。擁有十載豐富建站經(jīng)驗(yàn)和眾多成功案例,為您定制開發(fā)。
方法一:當(dāng)我們讀取文件中內(nèi)容后,如果想要修改文件中的某一行或者某一個(gè)位置的內(nèi)容,在python中是沒有辦法直接實(shí)現(xiàn)的,??想要實(shí)現(xiàn)這樣的操作只能先把文件所有的內(nèi)容全部讀取出來(lái),然后進(jìn)行匹配修改后寫入到新的文件中。(個(gè)人覺得用著不太舒服。)
方法二:可以先用讀(r)的方式打開,寫到內(nèi)存中,然后再用寫(w)的方式打開。
下圖是待操作的源文件:
實(shí)現(xiàn)方法:
#以讀的方式打開,將文件讀取到內(nèi)存中
with open("C:\Users\Administrator\Desktop\test.txt", "r", encoding="gbk") as f:
#存儲(chǔ)為一個(gè)列表的形式
lines = f.readlines()
#寫的方式打開文件
with open("C:\Users\Administrator\Desktop\test.txt", "w", encoding="gbk") as f_w:
for line in lines:
if "999999999" in line:
line = line.replace("999999999", "我的位置是999999")
f_w.write(line)
打印結(jié)果: