Python fileinput模塊使用介紹
fileinput模塊提供處理一個(gè)或多個(gè)文本文件的功能,可以通過使用for循環(huán)來讀取一個(gè)或多個(gè)文本文件的所有行。它的工作方式和readlines很類似,不同點(diǎn)在于它不是將全部的行讀到列表中而是創(chuàng)建了一個(gè)xreadlines對(duì)象。
下面是fileinput模塊中的常用函數(shù):
input() #返回能夠用于for循環(huán)遍歷的對(duì)象 filename() #返回當(dāng)前文件的名稱 lineno() #返回當(dāng)前已經(jīng)讀取的行的數(shù)量(或者序號(hào)) filelineno() #返回當(dāng)前讀取的行的行號(hào) isfirstline() #檢查當(dāng)前行是否是文件的第一行
創(chuàng)建測(cè)試文件test.txt:
# cat > test.txt << EOF
Hello,Python
www.fzitv.net
This is a test file
EOF
利用fileinput實(shí)現(xiàn)文件內(nèi)容替換,如:file_input.p(注意文件名,別寫成fileinput.py)
#!/usr/bin/env python
import fileinput
for line in fileinput.input('test.txt',backup='_bak',inplace=1):
print line.replace('Python','LinuxEye'),
fileinput.close()
inplace=1:標(biāo)準(zhǔn)輸出會(huì)被重定向到打開文件;backup='_bak',:替換文件內(nèi)容之前備份后綴以_bak結(jié)尾;另外,在調(diào)用fileinput.input()之后記得要fileinput.close()。
執(zhí)行結(jié)果如下:
# python file_input.py #執(zhí)行file_input.py # ls test.txt* test.txt test.txt_bak # cat test.txt Hello,LinuxEye www.fzitv.net This is a test file # cat test.txt_bak Hello,Python www.fzitv.net This is a test file
其他測(cè)試:
>>> import fileinput
>>> for line in fileinput.input('test.txt'):
... print fileinput.filename(),fileinput.lineno(),fileinput.filelineno()
...
test.txt 1 1
test.txt 2 2
test.txt 3 3
>>> import fileinput
>>> for line in fileinput.input('test.txt'):
... if fileinput.isfirstline():
... print line,
... else:
... break
...
Hello,LinuxEye
相關(guān)文章
python使用openpyxl庫讀取Excel文件數(shù)據(jù)
openpyxl是一個(gè)功能強(qiáng)大的庫,可以輕松地實(shí)現(xiàn)Excel文件的讀寫操作,本文將介紹如何使用openpyxl庫讀取Excel文件中的數(shù)據(jù),感興趣的小伙伴可以了解下2023-11-11
Python實(shí)現(xiàn)移動(dòng)指定圖片到指定目錄
這篇文章主要為大家詳細(xì)介紹了如何使用Python的os和shutil庫實(shí)現(xiàn)自動(dòng)化查找和移動(dòng)圖片功能,文中的示例代碼講解詳細(xì),感興趣的小伙伴可以了解下2025-02-02
Python演化計(jì)算基準(zhǔn)函數(shù)詳解
這篇文章主要介紹了Python演化計(jì)算基準(zhǔn)函數(shù),非常不錯(cuò),具有一定的參考借鑒價(jià)值,需要的朋友參考下吧,希望能夠給你帶來幫助2021-10-10
python中常見的幾種音頻數(shù)據(jù)讀取、保存方式總結(jié)
Python是一種非常適合進(jìn)行音頻處理和音頻分析的語言,因?yàn)樗性S多強(qiáng)大的庫可以使用,下面這篇文章主要給大家介紹了關(guān)于python中常見的幾種音頻數(shù)據(jù)讀取、保存方式,文中通過代碼介紹的非常詳細(xì),需要的朋友可以參考下2024-06-06
Python實(shí)現(xiàn)自動(dòng)整理文件的示例代碼
在我們?nèi)粘I钪?,文件總是雜亂無章的,這個(gè)時(shí)候就需要我們整理一下。但是文件太多的話整理起來是非常麻煩的,因此我們今天就來用Python實(shí)現(xiàn)文件的自動(dòng)整理2022-08-08
Python figure參數(shù)及subplot子圖繪制代碼
這篇文章主要介紹了Python figure參數(shù)及subplot子圖繪制代碼,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2020-04-04

