我有一個.dat文件,其中包含超過40,000行包含文本和數據的行。我想從這個文件提取具體數據根據以下內容:從文本文件中讀取特定數據
我需要一個行計數器,顯然,所以我知道當我到達文件的末尾。 我想打開文件閱讀和另一個寫作,並閱讀第一行。如果從第一行開始的第2行位置以「Model」開始,我想要打開一個空行到打開的文件進行寫入,然後在文件中跳過兩行。如果第一行的第二行不是以「Model」開始,那麼我希望從第一行選擇8個位置的文本並將其打印到打開的文件中。然後我會從第一行移動11個位置,依此類推。
infile = open("ratios.dat","r")
outfile = open("corr_ratios.txt","w")
for aline in infile:
items = (aline+2).split()
if items[0] = "Model"
outfile.write("\n")
aline = aline+2
else
items = aline+8
outfile.write(items)
使用「aline」作爲計數器的for-loop(這裏可能是錯誤的)。在讀取文件時,我分割這一行,以便檢查第一個位置項[0](其中items = aline.split())是否等於「Model」。如果沒有,我將第一行讀取的8行數據複製下來,並將內容寫入其他打開的文件。我沒有測試它,所有在紙上,因爲我寫這個 - 只需要其他python程序員的意見... – stars83clouds
你應該發佈你寫的代碼 – jramirez