Reading a text file backwards
Rick Holbert
holbertr at dma.org
Thu Sep 30 16:57:54 EDT 2004
Jay,
Try this:
myfile = open('myfile.txt', 'r')
mylines = myfile.readlines()
myfile.close()
mylines.reverse()
Rick
Jay wrote:
> I have a very large text file (being read by a CGI script on a web
> server), and I get memory errors when I try to read the whole file into a
> list of strings. The problem is, I want to read the file backwards,
> starting with the last line.
>
> Previously, I did:
>
> myfile = open('myfile.txt', 'r')
> mylines = myfile.readlines()
> myfile.close()
> for line in range(len(mylines)-1, -1, -1):
> # do something with mylines[line]
>
> This, however caused a "MemoryError," so I want to do something like
>
> myfile = open('myfile.txt', 'r')
> for line in myfile:
> # do something with line
> myfile.close()
>
> Only, I want to iterate backwards, starting with the last line of the
> file. Can anybody suggest a simple way of doing this? Do I need to jump
> around with myfile.seek() and use myfile.readline() ?
More information about the Python-list
mailing list