日韩久久久精品,亚洲精品久久久久久久久久久,亚洲欧美一区二区三区国产精品 ,一区二区福利

Python fileinput模塊使用介紹

系統(tǒng) 1914 0

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 << EOF
Hello,
          
            Python
          
          
www.jb51.net
This is a test file
EOF
        

利用fileinput實(shí)現(xiàn)文件內(nèi)容替換,如:file_input.p( 注意文件名,別寫(xiě)成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ì)被重定向到打開(kāi)文件;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.jb51.net
This is a test file
 
# cat test.txt_bak
Hello,Python
www.jb51.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
        

更多文章、技術(shù)交流、商務(wù)合作、聯(lián)系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號(hào)聯(lián)系: 360901061

您的支持是博主寫(xiě)作最大的動(dòng)力,如果您喜歡我的文章,感覺(jué)我的文章對(duì)您有幫助,請(qǐng)用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點(diǎn)擊下面給點(diǎn)支持吧,站長(zhǎng)非常感激您!手機(jī)微信長(zhǎng)按不能支付解決辦法:請(qǐng)將微信支付二維碼保存到相冊(cè),切換到微信,然后點(diǎn)擊微信右上角掃一掃功能,選擇支付二維碼完成支付。

【本文對(duì)您有幫助就好】

您的支持是博主寫(xiě)作最大的動(dòng)力,如果您喜歡我的文章,感覺(jué)我的文章對(duì)您有幫助,請(qǐng)用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長(zhǎng)會(huì)非常 感謝您的哦!!!

發(fā)表我的評(píng)論
最新評(píng)論 總共0條評(píng)論
主站蜘蛛池模板: 潜江市| 尉氏县| 茌平县| 江华| 毕节市| 通榆县| 北海市| 东阿县| 阳曲县| 湖南省| 黄梅县| 清水河县| 宁波市| 沁阳市| 蓬莱市| 含山县| 江川县| 麻江县| 大城县| 中山市| 城市| 莫力| 乳山市| 和政县| 望奎县| 雷波县| 泗水县| 南涧| 宝坻区| 盐山县| 朝阳市| 南昌县| 崇明县| 伊春市| 鄂尔多斯市| 镇远县| 安图县| 阿巴嘎旗| 鄱阳县| 廊坊市| 新乡县|