Pythonでファイルを開く際には、open()
関数を使用します。しかし、存在しないファイルを開こうとした場合、FileNotFoundError
が発生します。
例えば、以下のようなコードを考えてみましょう。
file_name = dt.now().strftime('%Y/%m/%d') + '.csv'
csv_file = open(file_name, 'a', encoding='utf-8')
このコードは、現在の日付をファイル名としてCSVファイルを開こうとします。しかし、'2019/06/11.csv'
というファイル名はディレクトリ構造を示しているため、該当のディレクトリが存在しない場合、FileNotFoundError
が発生します。
この問題を解決するためには、ファイル名にディレクトリ構造を示す文字(/
)を含めないようにします。
file_name = dt.now().strftime('%Y%m%d') + '.csv'
csv_file = open(file_name, 'w', encoding='utf-8')
このように修正すると、'20190611.csv'
というファイルが正常に作成されます。
以上のように、Pythonでファイルを開く際には、ファイル名にディレクトリ構造を示す文字を含めないことで、FileNotFoundError
を回避できます。また、ファイル名に使用できない文字がいくつか存在するため、それらを避けることも重要です。
この記事が、Pythonでファイル操作を行う際の一助となれば幸いです。