本記事ではPythonでテキストファイルを読み込み、書き込みする方法を紹介します。
Pythonでテキストファイルを読み込み、書き込みするためにライブラリを新たにインストールする必要はありません。
テキストファイルを読み込み
今回は下記のファイルを読み込んでみましょう。
サンプルテキストです。
サンプルテキスト二行目です。
サンプルテキスト三行目です。
以下がテキストファイルを読み込むためのコードです。
with open('sample.txt', encoding="utf-8") as f: # ①ファイルオープン
print(f.read()) # ②ファイル読み込み
- ①ファイルオープン
with open(ファイル名, encoding=文字コード) as ファイル識別子:
でファイルをオープンすることができます。with
を使用することで、with
のスコープが終了すると自動的にファイルがクローズされます。ファイル名
でオープンするファイルを指定します。ファイル識別子
を指定し、これを用いてファイルの読み込みを行います。
また、日本語を使用する場合は文字コードにutf-8
を指定します。 - ②ファイル読み込み
f.read()
でファイルの内容を読み込みます。
上記を実行すると以下の通り、ファイルの内容を読み込むことができていることが確認できます。

読み込みメソッドの違い
テキストファイルを読み込む際のメソッドにはいくつか種類があります。
read()
with open('sample.txt', encoding="utf-8") as f:
print(f.read())
f.read()はテキストファイル全体を読み込みます。

readline()
with open('sample.txt', encoding="utf-8") as f:
print(f.readline())
f.readline()は一行のみ読み込みます。

readlines()
with open('sample.txt', encoding="utf-8") as f:
print(f.readlines())
f.readlines()はファイル全体を行ごとにリスト形式で読み込みます。

テキストファイルを書き込み
続いて、テキストファイルに書き込みを行ってみましょう。
with open('sample2.txt', 'w', newline='', encoding="utf-8") as f: # ①ファイルオープン
# ②行の書き込み
f.write('テストデータ1\n')
f.write('テストデータ2\n')
f.write('テストデータ3\n')
- ①ファイルオープン
基本的には先程と同様ですが、Windows環境では
newline=''
を指定しましょう。
もし指定しなかった場合、正しく書き込みが行われなくなる可能性があります。(行と行の間に改行ができる等) - ②行の書き込み
でファイルに書き込みを行います。データの末尾で改行したい場合はファイル識別子
.write\n
を付与する必要があります。
上記のコードを実行した後、sample2.txtを開くと下記のとおりファイルが作成されていることを確認できます。

書き込みメソッドの違い
テキストファイルを書き込む際のメソッドにはいくつか種類があります。
write()
with open('sample2.txt', 'w', newline='', encoding="utf-8") as f:
f.write('テストデータ1\n')
f.write('テストデータ2\n')
f.write('テストデータ3\n')
1行ずつ書き込みます。
writelines()
with open('sample2.txt', 'w', newline='', encoding="utf-8") as f:
f.writelines(['テストデータ1\n', 'テストデータ2\n', 'テストデータ3\n'])
複数行を一度に書き込みます。
↓Python入門にオススメです。(アフィリエイトリンクです。)
