100個のフォルダを作成し、それぞれのフォルダにtxtファイルを作成したいと思います。そして、いくつかの条件のために、各テキストファイルに異なるものを書いてみたいと思います。私は、フォルダを作成し、各フォルダにファイルを作成することができます。しかし、open( '...')をf:として使用すると、各テキストファイルに異なるものを書くことができません。python - 作成された別のファイルに書き込む
ここに、フォルダとファイルを作成するコードを示します。それは完全に動作します。
def createAndFillFolders():
for i in range(100):
dir_name = (('/home/pi/Project/folder_%s') % (i))
if os.path.exists(dir_name): # if the folder already exists
shutil.rmtree(dir_name) # then overwrite
os.makedirs(dir_name)
open(os.path.join(dir_name, "file_%s" % (i + 1)), "w")
しかし、今はそれぞれのファイルに別のものを書きたいと思ったら、これを適切に行う方法を見つけることができません。 私はオープンでos.path.join使用してみましたが、それは私が「(...)で開く使用している場合は動作しません:
with open(os.path.join(dire_name,'/file_%s.txt' % (i + 1, i + 1), "w") as #("file_%i.txt" % (i + 1)):
("file_%i.txt" % (i + 1)).write("%i" %(i + 1))
を、私はこのコードの最後の部分はcompletly偽である知っているが、それは助けることができます私が持っていると思いますかを理解する。
をので、各folder_i「i」が内部書かれたとのfile_i.txtファイルを持っています。これを行うためのものです!!
あなたはすべてのファイルとフォルダを正しく作成できますか?あなたはちょうどファイルを書くためにいくつかのものを援助する必要があります。 – harshil9968
マップやファイルのリストを "ダイナミックに変数に名前を付けるにはどうすればいいですか"反パターンで再作成しようとしているようです。なぜ、各ファイルのハンドルを別のものと呼ぶ必要がありますか? –
f.write( "%i"%(i + 1)) 'が動作していないため、f:\ n \ tとして'(.....) – JETM