Pythonのopen関数でファイルが存在しない場合のみ書き込む方法

Pythonのopen関数を使用してファイルが存在しない場合のみ書き込むには、ファイルが存在しないかどうかを確認し、存在しない場合にファイルを作成してから書き込む必要があります。以下は、この方法の一般的な例です。

python
file_path = 'existing_or_new_file.txt' try: with open(file_path, 'r', encoding='utf-8') as file: existing_data = file.read() except FileNotFoundError: # ファイルが存在しない場合の処理 existing_data = '' # ここでファイルを書き込む前に必要なデータを準備 with open(file_path, 'w', encoding='utf-8') as file: # ファイルを上書きしてデータを書き込む file.write(existing_data) file.write('新しいデータを追加')

このコードでは、まずファイルを読み取りモード ('r') で開き、ファイルが存在しない場合にはFileNotFoundError例外が発生します。この例外が捕捉された場合、ファイルが存在しないことを示し、新しいファイルを作成するための準備を行います。

その後、ファイルを書き込みモード ('w') で再度開き、必要なデータを書き込みます。既存のデータは読み取られ、新しいデータが追加されます。ファイルが存在する場合、open関数によって既存のデータが上書きされます。

この方法を使用すると、ファイルが存在しない場合にファイルを作成し、既存のファイルの内容を保持しながら新しいデータを追加できます。