Python でファイル書き込み
ここでは Python でファイルに書き込む方法についてご説明します。
ファイルを書き込み用に開く
Python でファイルを書き込み用に開くには、 open() 関数で w、a、r+ モードでファイルを開きます。
w モードはファイルを書き込み用に開き、中身は削除されます。指定したファイルが存在しなければ作成されます。
a モードはファイルを書き込み用で開き、末尾に追記する状態になります。こちらも指定したファイルが存在しなければ作成されます。
r+ モードはファイルを読み書き用で開き、中身は削除されず、先頭から書き出す状態になります。指定したファイルが存在しなければエラーになります。
Python でファイルに上書きで書き込む
Python でファイルに上書きで書き込むには、w モードでファイルを開き、ファイルオブジェクトのwrite() メソッドを使います。
write() メソッドでは改行は挿入されないので、改行したい時は \n を追加します。
test2.txt という名前のファイルを作成して、3 行ファイルに書き込みたい時は次のようにします。
同じディレクトリに test2.txt というファイルがある時は、中身が上書きされてしまうので、ご注意ください。
with open("test2.txt", "w") as f:
f.write("ファイル書き込みのテストです。\n")
f.write("2行目です。\n")
f.write("3行目です。\n")
上のコードを実行すると、実行したコードが保存されているディレクトリと同じディレクトリに test2.txt ファイルができます。
ファイルを開いてみると、write メソッドを使って書き出した文字がファイルに書き込まれています。
Python でファイルに追記で書き込む
Python でファイルに追記するには、a モードでファイルを開きます。
先ほどのコードを何度実行しても、test2.txt ファイルの中身が上書きされるだけですが、a モードで開くと、どんどん文末に追記されていきます。
試しに、以下のコードを 2 回実行してみましょう。
with open("test2.txt", "a") as f:
f.write("追記します。\n")
test2.txt ファイルの中身を確認すると、「追記します。」が 2 回文末に追加されていますね。
以上、Python でファイルに書き込む方法についてご説明しました。