結論から言うと下記が最もスマートでモダンな書き方っぽい。 with open('/tmp/test.txt') as f: for line in f: print line 下記はファイルの中味が全部メモリに乗っちゃうから危険。 f = open('/tmp/test.txt') for line in f.readlines(): print line f.close() まとめ(イテレータ) for line in f: print line という書き方ができるのはfileが__iter__()とnext()を実装しているおかげ。詳しくはPEP-234に詳しく書いてある。 みんなのPython 第3版 作者: 柴田淳 出版社/メーカー: ソフトバンククリエイティブ 発売日: 2012/08/29 メディア: 単行本 購入: 1人 クリック: 13回 この商品を含むブログ (39件)