私は次のファイルを持っています:
abcde
kwakwa
<0x1A>
line3
linllll
ここ<0x1A>
で、は16進値が0x1Aのバイトを表します。Pythonでこのファイルを次のように読み込もうとした場合:
for line in open('t.txt'):
print line,
最初の2行のみを読み取り、ループを終了します。
解決策は、ファイルをバイナリ(またはユニバーサル改行モード)で開くことのようです-'rb'または'rU'。この振る舞いを説明できますか?