テキスト ファイルの末尾近くにある文字列を見つけようとしています。問題は、テキスト ファイルのサイズが大きく異なる可能性があることです。3MBから4GBへ。しかし、約 3 GB のテキスト ファイルでこの文字列を検索するスクリプトを実行しようとするたびに、コンピューターのメモリが不足します。だから、Pythonがファイルのサイズを見つけて、最後のメガバイトを読み取ることができるかどうか疑問に思っていました。
私が現在使用しているコードは次のとおりですが、前述のように、そのような大きなファイルを読み取るのに十分なメモリがないようです。
find_str = "ERROR"
file = open(file_directory)
last_few_lines = file.readlines()[-20:]
error = False
for line in last_few_lines:
if find_str in line:
error = True