我想給你舉個例子。如果我試圖從文件中打印包含整數-9999
的行。如何在Python中讀取文本文件時使用正則表達式?
19940325 78 -28 -9999
19940326 50 17 102
19940327 100 -11 -9999
19940328 56 -33 0
19940329 61 -39 -9999
19940330 61 -56 0
19940331 139 -61 -9999
19940401 211 6 0
這裏是我的代碼,使用正則表達式來閱讀文本文件和掃描以查找整數-9999
並打印線/包含整數行。
import re
file= open("USC00110072.txt", "r")
for line in file.readlines():
if re.search('^-9999$', line, re.I):
print line
我的代碼運行出錯,但沒有在輸出中顯示任何內容。請讓我知道我犯了什麼錯誤。
您只需直接迭代在你的文件上(即''in line in file') - 'readlines'會將整個文件讀入* first *。當你的文件是50GB時這很糟糕。 –