pythonでファイル作成する際にFileNotFoundErrorが出る

ファイルをopen関数で作成したいがFileNotFoundエラーが出ます

python3.2以上を使ってるなら、os.makedirs()を引数exist_ok=Trueとして使うといいよ


open()でファイルを新規に作成するときに、存在しないディレクトリを含んだパスを指定するとFileNotFoundErrorが発生します。

エラーの例

open('new_dir/new_file.txt', 'w')
# FileNotFoundError

解決策

python3.2以降の場合、makedirs()のオプションexits_okを使えば、ディレクトリが存在しない場合は作成し、存在する場合にもエラーが起きません。これをopen()の前に入れてあげましょう。

import os
os.makedirs(ディレクトリ名, exist_ok=True)
python3.2未満の場合

一度exists()を使って存在確認をしてディレクトリを作成しましょう。

import os
if not os.path.exists(ディレクトリ名):
    os.makedirs(ディレクトリ名)