国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁(yè) > 編程 > Python > 正文

Python fileinput模塊使用介紹

2020-02-23 06:15:37
字體:
來(lái)源:轉(zhuǎn)載
供稿:網(wǎng)友

fileinput模塊提供處理一個(gè)或多個(gè)文本文件的功能,可以通過(guò)使用for循環(huán)來(lái)讀取一個(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 << EOFHello,Pythonwww.jb51.netThis is a test fileEOF

利用fileinput實(shí)現(xiàn)文件內(nèi)容替換,如:file_input.p(注意文件名,別寫成fileinput.py)

#!/usr/bin/env pythonimport fileinputfor 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.txtHello,LinuxEyewww.jb51.netThis is a test file # cat test.txt_bakHello,Pythonwww.jb51.netThis is a test file

其他測(cè)試:

>>> import fileinput>>> for line in fileinput.input('test.txt'):...   print fileinput.filename(),fileinput.lineno(),fileinput.filelineno()...test.txt 1 1test.txt 2 2test.txt 3 3
>>> import fileinput>>> for line in fileinput.input('test.txt'):...   if fileinput.isfirstline():...     print line,...   else:...     break...Hello,LinuxEye
發(fā)表評(píng)論 共有條評(píng)論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 通海县| 鹤岗市| 平舆县| 沙河市| 疏附县| 萨嘎县| 璧山县| 临沭县| 彭水| 营山县| 辽阳县| 镇宁| 东乡族自治县| 凌海市| 阳谷县| 文山县| 海林市| 射洪县| 雅安市| 梁山县| 榆社县| 饶阳县| 彩票| 田林县| 黎城县| 思茅市| 黎川县| 德兴市| 遵义市| 共和县| 永年县| 轮台县| 紫云| 克山县| 永川市| 洱源县| 宿松县| 布尔津县| 太和县| 铜川市| 定南县|