0

ファイル名を少し変えて複数のファイルを開きたいのですが。

たとえば、開きたい

abc.001.xyz.010.trj

データファイルへの操作の後、結果をファイルに保存したいと思います。

out.abc.001.xyz.010.trj.dat

そして、このプロセスは10ファイルまで続くはずです。

このファイルを開く方法を知っています

readfile = abc.001.xyz.010.trj
f = open(readfile, "r")

後でファイルに書き込もうとしました

outfile = out.readfile
f = open(outfile, "w")

しかし、私は失敗します。出力ファイルを次のように取得することを期待します

 out.abc.001.xyz.010.trj.dat

ループごとに。

ありがとう。

4

1 に答える 1

7

このファイルを開く方法を知っています

いいえ、しません。の初期化filenameは無効であり、結果はになりSyntaxErrorます。

あなたは書くべきだった

readfile = "abc.001.xyz.010.trj"
f = open(readfile, "r")

同様に、出力ファイルを開くには

outfile = "out."  + readfile
f = open(outfile, "w")

ところで、あなたのコードには、あまり一般的ではない他の問題があります。

open一般に、人々はファイルとそれを好む傾向がcloseあり、ガベージコレクションに依存しません。さらに良いことに、ファイル操作全体をwith構文で囲みます。

于 2013-01-21T12:58:58.863 に答える