Path.read_text()をリストに。

cp932からutf-8への文字コード変換。では、ファイルを明示的にオープンしなくてもテキストファイルをエンコード付きで読み込めることを書きました。

実はここで読み込めるテキストは、改行コード"\n"まで含めて1つの文字列になっています。ちょうど、改行付きのテキストファイルをrepr()したような感じです。

もしも1行ごとに取り出してなにかの処理をしたいとしたらこのままでは困りますから、リストにする必要があります。すごく簡単で当たり前の処理なのでわざわざ記事にするほどのものでもないのですが、str.split()を使います。
from pathlib import Path

textfile = Path("abc.txt")
content = textfile.read_text(encoding="utf-8")
c_list = str.split(content, "\n")
これでファイルの内容を読み出してリストにすることができました。

ちなみに、中間の読み出し結果が不要なら、
from pathlib import Path

textfile = Path("abc.txt")
content = str.split(textfile.read_text(encoding="utf-8"), "\n")
とすれば、最初からリストが得られます。ただし、改行コードがすべて置き換わっているので、必要に応じて行末に改行コードを付加しなくてはいけません。

0 件のコメント:

コメントを投稿

AstroNvimでtelescope.nvimがエラーを吐いたとき。

Windowsの環境でAstroNvimをインストールして、Find Fileしたらtelescopeがエラーを吐いてきました。 メッセージは、 Failed to run `config` for telescope.nvim ...a/lazy/telescope.nvim/...