【Python入門】テキストファイルの読み書き方法

Pythonで情報をテキストファイルへ書き出す方法、テキストファイルから情報を読み込む方法について解説します。

この記事はこんな人におすすめ!

  • Pythonを学習している人
  • Pythonでのテキストファイル読み書きについて知りたい人
  • 開いたファイルを自動で閉じる方法について知りたい人
プログラミング言語の人気オンラインコース
目次

テキストファイルへの書き出し方法

開いたファイルを自動で閉じる構文を覚えよう

下記スクリプトは、テキストファイルへ書き込むサンプルです。

with open('test.txt', 'w', encoding='utf-8') as f:
    f.write('Pythonで\n')
    f.write('ファイルに\n')
    f.write('書き込み\n')

これを実行することで、「test.txt」というテキストファイルが作成されます。

with文を使うことで、処理実行後にcloseメソッドを呼び出さなくても、ファイルを自動で閉じてくれるのでお薦めです。

open()は、ファイルを開く関数で、ファイルオブジェクトを戻り値として返します。

引数の指定方法は、下表の通りです。

引数説明
第1引数ファイル名を指定
第2引数モード
‘w’ : 書き込みモード
‘r’ : 読み込みモード
‘a’ : 追加書き込みモード
encoding=文字エンコーディング

write()で開いたファイルにテキストを書き込むことが出来ます。

文字エンコーディングの例

キーワード引数のencodingには、下表例の文字エンコーディングを設定します。

引数説明
utf-8UTF-8
shift-jisシフトJIS
enc-jp日本語EUC
iso-2022-jpJIS

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

全文一括で読み込む方法

テキストファイルから全文一括で読み込むサンプルです。

with open('test.txt', encoding='utf-8') as f:
    print(f.read())

実行するとテキストファイル通りにターミナルへ出力されます。

[実行結果]

Pythonで
ファイルに
書き込み

1行ずつ読み込む方法

テキストファイルから1行ずつ読み込むにはfor文を使います。以下サンプルスクリプトです。

with open('test.txt', encoding='utf-8') as f:
    for i, text in enumerate(f, 1):
        print(i, text, end='')

[実行結果]

1 Pythonで
2 ファイルに
3 書き込み

1行ずつ読み込む方法は、いくつかありますが、enumerate関数を使ったものをサンプルとしています。enumerate関数を使うと行番号も把握することが出来、便利です。

まとめ

今回は、Pythonで情報をテキストファイルへ書き出す方法、テキストファイルから情報を読み込む方法について解説しました。

Python学習のお役に立てたなら幸いです。

独りでPython学習するのは大変だなと思う方は、書籍やスクールを活用するのも手です。

よかったらシェアしてね!
  • URLをコピーしました!

この記事を書いた人

大学で機械工学を学んだ後、製造業で働く40代の会社員です。
IT系、電気系を学んでこなかった機械系人間が、ゲーム制作、電子工作に奮闘してます。
極力低コストでものづくりを楽しむのがモットー。

目次