🗄️

Python: 1行でファイルからの読み込み

1 min read

正統派としては以下のように書くのだろうと思います。

with open("foo.txt", "r") as f:
    text = f.read()

これを1行で書く方法のメモです。 open("foo.txt").read() としても一応できますが、ちゃんと後始末もしたいとします。

pathlib を使えばできました。(importはノーカウントにさせてもらいます。)

https://docs.python.org/3/library/pathlib.html#pathlib.Path.read_text
from pathlib import Path

text = Path("foo.txt").read_text()

バイナリ (bytes) で読み込みたければ read_bytes があります。

今回の自分の事情としては、ファイル読み込みをリスト内包表記の中で行いたかったのでwithが出てくると都合が悪く、これで助かりました。

Discussion

ログインするとコメントできます