How to read a file in reverse order?
A correct, efficient answer written as a generator. import os def reverse_readline(filename, buf_size=8192): “””A generator that returns the lines of a file in reverse order””” with open(filename) as fh: segment = None offset = 0 fh.seek(0, os.SEEK_END) file_size = remaining_size = fh.tell() while remaining_size > 0: offset = min(file_size, offset + buf_size) fh.seek(file_size – offset) … Read more