20Gbのファイルを解析して、ある条件を満たす行を別のファイルに出力しているのですが、pythonが2行を一度に読み込んで連結してしまうことがあります。
inputFileHandle = open(inputFileName, 'r')
row = 0
for line in inputFileHandle:
row = row + 1
if line_meets_condition:
outputFileHandle.write(line)
else:
lstIgnoredRows.append(row)
ソース ファイルの行末を確認したところ、改行 (ascii char 10) としてチェックアウトされます。問題のある行を引き出して、それらを分離して解析すると、期待どおりに機能します。ここでPythonの制限にぶつかっていますか? 最初の異常のファイル内の位置は 4GB マークのあたりです。