本篇文章為大家展示了Python中 fileinput模塊的作用是什么,內容簡明扼要并且容易理解,絕對能使你眼前一亮,通過這篇文章的詳細介紹希望你能有所收獲。
一 簡介
fileinput 是python 提供的一個可以快速遍歷,修改一個或者多個文件的模塊。我們可以使用該模塊進行文本替換 并做文件備份。
二 使用
2.1 使用方法
fileinput.input (files=None, inplace=False, backup='', bufsize=0, mode='r', openhook=None)
files 為要讀入的文件 或者文件列表 files=1.txt files=['1.txt','2.txt']
inplace 是原地替換與否,為True時表示重寫原文件。默認為False。
backup 備份要替換的文件的后綴 backup='.bak' files='1.txt' 備份的文件名稱為 1.txt.bak
mode 讀寫模式,默認為只讀
bufsize 讀寫文件的緩沖區大小,默認為0 ,如果文件比較大 則需要調整該值。
import fileinput
def process(line):
do_something
for line in fileinput.input():
process(line) #處理文件的行 然后重新寫入源文件
2.2 常用的函數:
fileinput.input() # 讀取文件的內容
fileinput.filename() # 文件的名稱
fileinput.lineno() # 當前讀取行的數量
fileinput.filelineno() # 讀取行的行號
fileinput.isfirstline() # 當前行是否是文件第一行
fileinput.isstdin() # 判斷最后一行是否從stdin中讀取
fileinput.close() # 關閉隊列
2.3 例子
In [4]: for line in fileinput.input('1.txt',inplace=1,backup='.bak'):
...: print line.rstrip() + ' line'
...:
In [5]: pwd
Out[5]: u'/Users/yangyi'
In [6]: ls 1.txt*
1.txt
1.txt.bak
查看備份文件
In [7]: cat 1.txt.bak
AA:BB:CC
aa:30:6
cc:50:3
dd:20:7
bb:10:2
ee:40:4
ee:60:1
查看源文件,已經被修改了
In [8]: cat 1.txt
AA:BB:CC line
aa:30:6 line
cc:50:3 line
dd:20:7 line
bb:10:2 line
ee:40:4 line
ee:60:1 line
上述內容就是Python中 fileinput模塊的作用是什么,你們學到知識或技能了嗎?如果還想學到更多技能或者豐富自己的知識儲備,歡迎關注億速云行業資訊頻道。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。