vim /etc/my.conf
使用 open 函式去讀取檔案,似乎是所有 Python 工程師的共識,
今天明哥要給大家推薦一個比 open 更好用、更優雅的讀取檔案方法 -- 使用 fileinput
fileinput 是 Python 的內置模塊,但我相信,不少人對它都是陌生的,今天我把 fileinput 的所有的用法、功能進行詳細的講解,并列舉了一些非常實用的案例,對于理解和使用它可以說完全沒有問題,
1. 從標準輸入中讀取#
當你的 Python 腳本沒有傳入任何引數時,fileinput 默認會以 stdin 作為輸入源
Copy Copy# demo.py
import fileinput
for line in fileinput.input():
print(line)
效果如下,不管你輸入什么,程式會自動讀取并再列印一次,像個復讀機似的,
Copy Copy$ python demo.py
hello
hello
python
python
2. 單獨打開一個檔案#
腳本的內容如下
Copy Copyimport fileinput
with fileinput.input(files=('a.txt',)) as file:
for line in file:
print(f'{fileinput.filename()} 第{fileinput.lineno()}行: {line}', end='')
其中 a.txt 的內容如下
hello
world
執行后就會輸出如下
Copy Copy$ python demo.py
a.txt 第1行: hello
a.txt 第2行: world
需要說明的一點是,fileinput.input() 默認使用 mode='r' 的模式讀取檔案,如果你的檔案是二進制的,可以使用mode='rb' 模式,fileinput 有且僅有這兩種讀取模式,
轉載請註明出處,本文鏈接:https://www.uj5u.com/shujuku/265323.html
標籤:其他
上一篇:MySQL優化
下一篇:🍖事務隔離機制
