こんなファイルがあるとして
$ cat /tmp/foo.txt
foo
bar
pon
readlines()
を使うとこうなっちゃう
with open('/tmp/foo.txt', 'r') as f:
lines = f.readlines()
# print lines -> ['foo\n', 'bar\n', '\n', 'pon\n']
けど大抵の場合\n
は付いてこなくて良いので、今まで何年もずっとこうやってた
with open('/tmp/foo.txt', 'r') as f:
lines = map(lambda s: s.strip(), f.readlines())
# print lines -> ['foo', 'bar', '', 'pon']
どうも素直に左から読めないし、map(strip, f.readlines())
って書けないしですっきりしないので悶々としてた
けど、こう書けることをたまたま知って、とても感動したのでメモ
with open('/tmp/foo.txt', 'r') as f:
lines = f.read().splitlines()
# print lines -> ['foo', 'bar', '', 'pon']
これはすっきりしてて良いなぁ!
そんだけ!