私はthis rosalind problemに手をかけていますが、問題が発生しています。私は自分のコード内のすべてが正しいと信じていますが、明らかに意図したとおりに動作していないわけではありません。私は、ファイルの内容を削除し、そのファイルにいくつかのテキストを書いてみたい。プログラムは、私が望むテキストを書きますが、最初の内容は削除しません。ファイルの内容を削除してから(Pythonで)削除しますか?
def ini5(file):
raw = open(file, "r+")
raw2 = (raw.read()).split("\n")
clean = raw2[1::2]
raw.truncate()
for line in clean:
raw.write(line)
print(line)
私が見てきた:
How to delete the contents of a file before writing into it in a python script?
しかし、私の問題は解決しません。私は間違って何をしていますか?
これは良い例ではありません。出力用に別の一時ファイルを作成し、完了したら元のファイルに名前を変更する方がよい場合があります。つまり、プログラムが完了しなかった場合に入力ファイルを破壊することなく、同時に実行されているシステム上の他のプロセスが元のバージョンまたは更新されたフォームのいずれかのバージョンにいつでもアクセスできます。 –