簡體   English   中英

遍歷列表到 output 不同的txt文件(python)

[英]Traversing through list to output different txt files (python)

我試圖讓我的代碼通過 Python 中的一個文本文件讀取,並將文本文件中的每個“873”字符串替換為我的數組中的任何內容,並將數組中每個元素的文本文件替換為 output。

到目前為止,我已經實現了大約 75%。 我的代碼現在抓取文本文件,為數組中的每個元素生成一個文本文件,但實際上只將文本寫入我數組中的第一個 output 文本文件。 在制作的output文本文件的rest中,各為空白文件。

這是我所擁有的:

> fin = open("C:\\Users\\...input.txt", "rt")
> 
> 
> items = ["sup", "how", "are", "you"]
> for item in items:
>     with open ("{}outputs.txt".format(item), "w") as f:
>         for line in fin:
>             f.write(line.replace('873', item))
> 
> fin.close()

這與“sup”的預期一樣,復制了 input.txt,但將每個“873”替換為“sup”。 (supoutputs.txt) 但對於產生的輸出的 rest (howoutputs.txt, areoutputs.txt, yououtputs.txt),文件中沒有任何內容。

遍歷fin一次后,該文件的 cursor 位於文件末尾。 如果要再次遍歷fin ,請使用seek將 cursor 移回文件開頭。

您必須使用seek() ,因為這用於將文件句柄的 position 更改為給定的特定 position。 文件句柄就像一個 cursor,它定義了從哪里讀取或寫入文件中的數據

因此,您的問題的解決方案是:

fin.seek(0, 0)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM