2016-12-24 8 views
0

foo.txtを複数のディレクトリにpythonでどのように作成すればよいですか?たとえば、のは、私は、各フォルダにfoo.txtの置くどのようにこの木複数のディレクトリにテキストファイルを作成する - Python

example 
    --- folder1 
    --- folder2 
    --- folder3 

を持っているとしましょうか?私はこのコードを試しましたが、うまくいきませんでした。

あなたが root一部(ここでは /)別に

import os 

for root, dirs, files in os.walk("/", topdown=False): 
    for name in dirs: 
     with open(os.path.join(root,name,'file.txt'), 'w') as f: 
      f.write('ex') 

含むjoinパス部分を一緒に持って

import os 

for root, dirs, files in os.walk("/", topdown=False): 
    for name in dirs: 
     f = open(name + '/file.txt', 'w') 
     f.write('ex') 
+0

私はPythonのプロではありませんが、新しいファイルを開く前に、最初に開いたファイルを閉じる必要があると思います。 withステートメントは、あなたのためにそれを処理するので、ここで便利です。 – Nebelhom

+0

まだ動作しませんでした。 'f.close()' –

答えて

0

:あなたは「あなたrootとして、このコードを実行しない場合

  1. 保護されたディレクトリで例外が発生し、停止します。おそらく、/(ホームディレクトリなど)よりも少し下で開始することを検討するか、続行できるように書き込み例外をキャッチしてください。それがブロックから出たときに、ファイルが自動的にクローズされるよう
  2. withブロックを使用します(あなたがそうするようにルートとしてそれを実行する必要があります)すべてのディレクトリにファイルを作成しますので、
  3. このコードは「危険」であります
+0

動作しませんでした。私のフォルダにはスペースが入っています。 –

+0

どのように働かなかったのですか?例外はありますか?何もない? –

+0

ファイルを実行したところ、画面に何も表示されませんでした。 –

関連する問題