Lawrence D'Oliveiro wrote:
In message <91e09eaf-5a25-4a6b-b131-
a5245970b...@f19g2000yqh.googlegroups.com>, gert wrote:

On Apr 4, 12:58 am, Lawrence D'Oliveiro <l...@geek-
central.gen.new_zealand> wrote:

In message <8bc55c05-19da-41c4-
b916-48e0a4be4...@p11g2000yqe.googlegroups.com>, gert wrote:

with open('com1', 'r') as f:
for line in f:
    print('line')
Why bother, why not just

for line in open('com1', 'r') :
    print line
So its does the same thing as with right ?

Why do you need a with?

Automatic closing and finalizing stuff.

All Python objects are reference-counted.

Nope.  Only in CPython, and even that could change.

Once the file object becomes inaccessible, it is automatically closed. Simple.

Even in CPython, that would not be true now is the object became involved in or became a dependent of a reference cycle.

Note: I wouldn't do this for files open for writing. I'd prefer to make sure those were properly flushed and closed, if only to catch any I/O errors.

tjr

--
http://mail.python.org/mailman/listinfo/python-list

Reply via email to