【Python】テキストファイルの読み込み・書き込み方法を紹介!

  • 2019年9月14日
  • 2020年4月28日
  • Python

こんにちは!

皆さんは、Pythonでテキストファイルを扱ったことはありますか?

テキストファイルはとてもよく使われているデータ形式なので、これを使って何かをしようとした方も多いのではないかと思います。

扱ったことがない方も、今後扱いたいと思うことがきっとあるかと思います。

今回の記事では、テキストファイルに関する以下の方法を紹介します。

  • with文を用いたテキストファイルの読み込み方法
  • with文を用いないテキストファイルの読み込み方法
  • with文を用いたテキストファイルの書き込み方法
  • with文を用いないテキストファイルの書き込み方法

テキストファイルの読み込み方法

テキストファイルの読み込みは、主に以下の流れで行います。

  1. ファイルを開く
  2. テキストファイルを読み込む
  3. ファイルを閉じる

今回はテキストファイルの読み込み・書き込み方法を、with文を用いない方法、with文を用いる方法の2通り紹介します。

with文についてわからない方は、以下の記事を参考にしてください。

参考記事

こんにちは! 皆さんは「with文」というものをご存知ですか? with文は、with文を用いなくても他の書き方で書けるため、知っていても使い方は理解していない、といった方もいるかと思います。 with文はファイルのオー[…]

一緒に見る

with文を用いない方法

初めに、with文を用いずにテキストファイルを読み込む方法を紹介します。

以下のプログラムは、with文を用いない、テキストファイルからテキストデータを読み込むプログラムです。

「Python.txt」には、「Python初心者の備忘録」という文字列が格納されています。

file = "Python.txt"

f = open(file)
text = f.read()
f.close()
print(text)

解説

f = open(file)
この部分で、指定したファイルを開きます。
text = f.read()
この部分で、先ほど開いたファイルの中のテキストを読み込みます。
f.close()
開いたファイルを閉じます。

実行結果

Python初心者の備忘録
最後のf.close()でファイルを閉じる処理は必ず忘れないようにしましょう。

with文を用いる方法

次に、with文を用いてテキストファイルを読み込む方法を紹介します。

以下のプログラムは、with文を用いた、テキストファイルからテキストデータを読み込むプログラムです。

file = "Python.txt"
with open(file) as f:
    text = f.read()
    print(text)

実行結果

Python初心者の備忘録

with文を用いることによって、クローズ処理「close()」を記述する必要がなくなります。

テキストファイルの処理では、クローズ処理を忘れがちなので、with文を用いるとそのような心配がなくなります。

また、プログラムの長さも短く、そして読みやすくなっていますね!

テキストファイルの書き込み方法

テキストファイルの書き込みも、同様に以下の流れで行います。

  1. ファイルを開く
  2. テキストファイルへ書き込む
  3. ファイルを閉じる

with文を用いない方法

初めに、with文を用いずにテキストファイルを読み込む方法を紹介します。

以下のプログラムは、with文を用いない、テキストファイルへテキストデータを書き込むプログラムです。

file = "Python.txt"
f = open(file, "w", encoding = "utf_8")
f.write("Python初心者の備忘録")
f.close()

解説

f = open(file, “w”, encoding = “utf_8”)
この部分で、書き込みたいテキストファイルを開きます。
開く際にはファイルオープンモードを指定する必要があります。
ファイルオープンモードには以下のようにたくさんのモードがあります。
r 読み込み用
w 書き込み用(上書き)
a 書き込み用(追記)
x 書き込み用(ファイル新規作成、既存ファイルの場合はエラー)
+ 更新用
t テキストモード
b バイナリモード

今回のプログラムでは、“w”を指定しているため、書き込み用でファイルを開き、内容を上書きします。

ファイルの読み込みの際には、ファイルオープンモードを指定していませんでしたが、これはデフォルトでファイルオープンモードが”r”に設定されているためです。

f.write(“Python初心者の備忘録”)
この部分で、write()の引数をファイルに書き込みます。
f.close()
開いたファイルを閉じます。

実行結果

上記のプログラムを実行すると、カレントディレクトリに「Python.txt」というテキストファイルが作成され、中に「Python初心者の備忘録」と書き込まれます。

ファイルオープンモードに「w」を指定しているため、カレントディレクトリに「Python.txt」が存在する場合は、中身が上書きされます。

上書きされたくないファイルの場合には、ファイルオープンモードに、追記用の”a”や新規作成用の”x”を用いるようにしましょう。

with文を用いる方法

次に、with文を用いてテキストファイルを読み込む方法を紹介します。

以下のプログラムは、with文を用いた、テキストファイルへテキストデータを書き込むプログラムです。

file = "Python.txt"
with open(file, "w", encoding = "utf_8") as f:
    f.write("Python初心者の備忘録")

こちらも、with文を用いることによって、クローズ処理「close()」を記述する必要がなくなります。

まとめ

今回の記事では、テキストファイルに関する以下の方法を紹介しました。

  • with文を用いないテキストファイルの読み込み方法
     →ファイルを閉じるのを忘れない
  • with文を用いたテキストファイルの読み込み方法
     →ファイルを閉じる直接の記述が必要がない
  • with文を用いないテキストファイルの書き込み方法
     →ファイルを閉じるのを忘れない
      上書きに注意
  • with文を用いたテキストファイルの書き込み方法
     →ファイルを閉じる直接の記述が必要がない
      上書きに注意

テキストファイルを扱えるようになると、プログラミングの幅がとても広がります。

しっかりとテキストファイルを扱えるようになりましょう!