【Python入門】ファイルを読み込む方法|readline・readlines・read

この記事ではPythonによるファイルの読み込みについて解説します。

Pythonでファイルを読み込むとき

1行ずつ読み込んでデータを取得したい
1行ずつ読み込んで配列(リスト)に取得したい
内容を全て読み込みたい

なんて問題に直面することもあると思います。そこで、ここではPythonでファイル読み込む方法として、

  • 【基礎】ファイルを読み込む方法
  • 【実践】readline()で1行ずつ読み込む
  • 【実践】readlines()で1行ずつ読み込んでリストに格納する
  • 【実践】read()でファイルを全て読み込む

などについて解説していきます。ファイルを扱う操作は実際の開発でもよく行いますのでこの機会にぜひ覚えておきましょう!

ファイルを読み込む方法

Pythonではファイルを読み込むときは、

  • ファイルを開く
  • ファイルの内容を取得する
  • ファイルを閉じる

という手順があります。また、ファイルを読み込む方法としては以下の種類があります。

関数処理
readline()1行ずつ読み込む
readlines()1行ずつ読み込んでリストに格納する
read()ファイルを全て読み込む

では最初に以下のファイルを用意して、次項よりそれぞれのファイルの読み込み方法について見ていきましょう!

lang.txt

language
python
ruby
java
swift
javascript
php

readline()で1行ずつ読み込む

readline()はファイルの内容を1行ずつ読み込んで取得したい場合に使用します。readlineの処理としては、ファイルの内容を1行ずつ読み込んで文字列として返します。

以下ではファイルlang.txtを読み込んで1行ずつ取得しています。サンプルプログラム:

f = open('lang.txt', 'r')
line = f.readline()

while line:
    print(line)
    line = f.readline()
f.close()

実行結果:

language

python

ruby

java

swift

javascript

php

このようにファイルの内容が1行ずつ読み込まれました。ファイルを扱うときの前提として、まずファイルを開くにはopen関数で第一引数にファイルを指定し、第二引数には読み込みモードを指定します。

読み込みモードは「r」がファイル読み込み、「w」がファイル書き込みになります。そして、ファイル処理が終了したら、close()を指定してファイルを閉じることを忘れないでください。

readlines()で行ごとにリストで取得する

readlines()はファイルの内容を1行ずつ読み込み、読み込んだ内容をリストに格納します。そのためreadline()のように、ファイルを読み込んだあと都度、値を取得する手間が省けます。

サンプルプログラム:

f = open('lang.txt', 'r')
list = f.readlines()
for line in list:
    print(line)
f.close()

実行結果:

language

python

ruby

java

swift

javascript

php

このようにリストにファイルの内容が格納されていることがわかりますね!

read()でファイルを全て読み込む

read()を使用すると、ファイルの内容を全て読み込み文字列として返します。

サンプルプログラム:

f = open('lang.txt', 'r')
text = f.read()
print(text)
f.close()

実行結果:

language
python
ruby
java
swift
javascript
php

このように一度にファイルの内容を文字列として取得したい場合はread()を使用すると便利です。

さまざまなファイルの操作方法

Pythonにはファイルを操作するさまざまな方法があります。

以下の記事では

  • ファイルの削除
  • 名前の変更
  • 更新日の確認
  • ファイルの存在有無

などのファイル処理について紹介しています。気になる方はぜひ参考にしてみてくださいね!

まとめ

ここでは、ファイルを読み込む方法として、

  • Pythonでファイルを読み込む方法
  • readline()で1行ずつ読み込む方法
  • readlines()で1行ずつ読み込んでリストに格納する方法
  • read()でファイルを全て読み込む方法

などについて解説しました。実際にファイルを読み込んでデータを取得する処理はよく使いますので、使い方はよく覚えておきましょう。

もし、readline・readlines・readの使い方を忘れてしまったら、この記事を思い出してくださいね!

なお、今Pythonを学習している方は以下の記事もどうぞ。

はじめてPythonを使う方でもわかりやすいように、Pythonでできることやその学習法などを中心にまとめています。

復習にも使えると思いますので、ぜひ一度ご覧になってみてくださいね。

Python 入門完全攻略ガイド

LINEで送る
Pocket

「プログラミング、右も左もわからない…」という方にオススメ

当プログラミングスクール「侍エンジニア塾」では、これまで6000人以上のエンジニアを輩出してきました。

その経験を通してプログラミング学習に成功する人は、「目的目標が明確でそれに合わせた学習プランがあること」「常に相談できる人がそばにいること」「自己解決能力が身につくこと」この3つが根付いている傾向を発見しました。

侍エンジニア塾は上記3つの成功ポイントを満たすようなサービス設計に磨きをかけております。

cta_under_bnr

「自分のスタイルや目的に合わせて学習を進めたいな」とお考えの方は、ぜひチェックしてみてください。

書いた人

ヤマシタ

システムエンジニアとして10年勤務→フリーランスへ。現在は侍ブログ編集部としてこれまでに200記事以上の記事を執筆。
大規模システム開発からWebアプリ開発まで経験あり。最近ではPythonの機械学習に挑戦中。