On Mon, Sep 2, 2019 at 3:02 AM MRAB <pyt...@mrabarnett.plus.com> wrote:
>
> On 2019-09-01 16:46, Barry wrote:
> >
> >
> >> On 31 Aug 2019, at 15:41, Manfred Lotz <ml_n...@posteo.de> wrote:
> >>
> >> When you say COULD this sounds like it is a matter of luck. My thinking
> >> was that USUALLY the file will be closed after the statement because
> >> then the file handle goes out of scope.
> >
> > It all depends on the way any python implementation does its garbage 
> > collection. The file is closed as a side effect of deleting the file object 
> > to reclaiming the memory of the file object.
> >
> > At the start of python 3 people where suprised when files and other 
> > resources where not released at the same time that python 2 released them.
> >
> Is that true?
>
> I thought that it was because other implementations of Python, such as
> Jython and IronPython, don't use reference counting, so files and other
> resources aren't necessarily released as soon as an object loses its
> last reference, and, moreover, it's not required to do so by the
> language definition.
>

Yeah. Given that the PEP introducing the 'with' statement dates back
well before Python 3, I very much doubt it has anything to do with the
3.0 changes.

ChrisA
-- 
https://mail.python.org/mailman/listinfo/python-list

Reply via email to