Python でファイルを 1 行ずつ読みたいのですが、(if 条件に基づいて) 場合によっては、ファイルの次の行も読み込んで、同じように読み続けたいと思います。
例:
file_handler = open(fname, 'r')
for line in file_handler:
if line[0] == '#':
print line
else:
line2 = file_handler.readline()
print line2
基本的にこの例では1行ずつ読み込もうとしていますが、行が次の行で始まらない場合は#
、次の行を読んで印刷し、2行目以降も読み続けます。これは、コードで行っている同様のことでエラーが発生した例にすぎませんが、私の目標はタイトルに記載されているとおりです。
しかし、次のようなエラーが発生しますValueError: Mixing iteration and read methods would lose data
。
私がやろうとしていることをよりスマートな方法で行うことは可能でしょうか?