本文實(shí)例講述了Python實(shí)現(xiàn)替換文件中指定內(nèi)容的方法。分享給大家供大家參考,具體如下:
這里使用python編寫的程序,實(shí)現(xiàn)如下功能:將文件中的指定子串 修改為 另外的子串
編寫的python程序,文件名是file_replace.py,具體代碼如下:
#!/usr/bin/env python #_*_ coding:utf-8 _*_ import sys,os if len(sys.argv)<4 or len(sys.argv)>5: sys.exit('There needs four or five parameters') elif len(sys.argv)==4: print 'usage:./file_replace.py old_text new_text filename' else: print 'usage:./file_replace.py old_text new_text filename --bak' old_text,new_text=sys.argv[1],sys.argv[2] file_name=sys.argv[3] f=file(file_name,'rb') new_file=file('.%s.bak' % file_name,'wb')#文件名以.開頭的文件是隱藏文件 for line in f.xreadlines():#f.xreadlines()返回一個(gè)文件迭代器,每次只從文件(硬盤)中讀一行 new_file.write(line.replace(old_text,new_text)) f.close() new_file.close() if '--bak' in sys.argv: #'--bak'表示要求對(duì)原文件備份 os.rename(file_name,'%s.bak' % file_name) #unchanged os.rename('.%s.bak' % file_name,file_name) #changed else: os.rename(file_name,'wahaha.txt')#此處也可以將原文件刪除,以便下一語(yǔ)句能夠正常執(zhí)行 os.rename('.%s.bak' % file_name,file_name)