Python does not take up available physical memory

Chris Angelico rosuav at gmail.com
Fri Oct 19 15:18:56 EDT 2012


On Sat, Oct 20, 2012 at 4:08 AM, Pradipto Banerjee
<pradipto.banerjee at adainvestments.com> wrote:
> I am trying to read a file into memory. The size of the file is around 1 GB.
> I have a 3GB memory PC and the Windows Task Manager shows  2.3 GB available
> physical memory when I was trying to read the file. I tried to read the file
> as follows:
>
>
>
>>>> fdata = open(filename, ‘r’).read()

Is this Python 2 or Python 3? Just throwing a random possibility out
there, could it be that reading it in and converting it to Unicode
text requires more memory than you have?

My recommendation: Unless you actually need to search the whole file
as a single string, iterate over the file instead:

for line in open(filename):
    # do something with line

Your loop will execute once for each line in the file.

ChrisA



More information about the Python-list mailing list