If you assign the file object to a variable, you can explicitly close it using .close()
f = open('test.txt','r')
buf = f.readlines()
f.close()
Alternatively (and more generally preferred), you can use the with
keyword (Python 2.5 and greater) as mentioned in the Python docs:
It is good practice to use the
with
keyword when dealing with file
objects. This has the advantage that
the file is properly closed after its
suite finishes, even if an exception
is raised on the way. It is also much
shorter than writing equivalent
try-finally blocks:
>>> with open('test.txt','r') as f:
... buf = f.readlines()
>>> f.closed
True