ファイルを1行ずつリストに読み込む方法

python string file readlines


Pythonでファイルの全行を読み込んで、各行を要素としてリストに格納するにはどうすればいいですか?

ファイルを一行ずつ読み込んで、リストの最後に一行ずつ追記したいのですが、どうすればいいでしょうか?




Answer 1 SilentGhost


with open(filename) as f:
    content = f.readlines()
# you may also want to remove whitespace characters like `\n` at the end of each line
content = [x.strip() for x in content] 



Answer 2 Felix Kling


入力と出力を参照してください。

with open('filename') as f:
    lines = f.readlines()

または、改行文字を取り除いた状態で

with open('filename') as f:
    lines = [line.rstrip() for line in f]



Answer 3 robert


これは必要以上に明示的ですが、あなたが望むことをします。

with open("file.txt") as file_in:
    lines = []
    for line in file_in:
        lines.append(line)



Answer 4 Noctis Skytower


これにより、ファイルから行の「配列」が生成されます。

lines = tuple(open(filename, 'r'))

open は、反復可能なファイルを返します。ファイルを反復処理すると、そのファイルから行が取得されます。 tuple はイテレータを取得して、指定したイテレータからタプルインスタンスをインスタンス化できます。 lines は、ファイルの行から作成されたタプルです。




Answer 5 Eneko Alonso


\n 含めたい場合:

with open(fname) as f:
    content = f.readlines()

含めたくない場合は、 \n

with open(fname) as f:
    content = f.read().splitlines()