2017-05-19 37 views
-4

私はpythonで17の出力ファイルを生成し、私のpythonコードファイル名はmain.pyです。今、これらの17個のtxtファイルをすべて1つのresult.xmlファイルにマージします。これを行うために、同じmain.pyにファイルをマージするコードを追加しました。私はコードを実行すると、17ファイルの合併が正常に動作していないと出力ファイルが適切なシーケンスで行を生成しませんでしたしかし、私は2つのセット(1つの17ファイルの作成と他の合併(同じコードmain.pyで使われている2つの部分に分かれています)、別々に実行するとresult.xmlファイルが正しく生成されます。コードの)実行されている2つの部分に比較して、別々に複数のファイルを1つの.pyファイルでマージする

+4

コードを共有する必要があります。デバッグ –

+0

コードを関数に入れましたか? 'def fuu():#create * .txt'のようなものと' def bar():#ファイルをマージする ' – LaughU

答えて

0

あなたは、いくつかの適切なヘルプのためにいくつかのコードを追加したいかもしれませんが、一般的に、あなたのコードは次のようになります?

files = ["path/to/file1.txt", "path/to/file1.txt", etc ...] 
with open("path/to/result.xml", 'w') as result: 
    for file in files: 
     with open(file) as content: 
      result.write(content.read()) 

私はドン」あなたのコードが失敗する理由を知りません。あなたはこれまでの例やエラーメッセージを提供していないので、私は一度に複数のファイルを開くのが面倒だと推測します。これは論理的な間違いです。これはあなたのプログラムの主な違いです(あなたの説明から)。

関連する問題