Context manager, atexit processing, and PEP 3143 DaemonContext.close
duncan.booth at invalid.invalid
Tue May 19 09:56:51 CEST 2009
Ben Finney <ben+python at benfinney.id.au> wrote:
> MRAB <google at mrabarnett.plus.com> writes:
>> Gunter Henriksen wrote:
>> > If there is a function which triggers a one-shot switch, I like to
>> > have a way to find out if it has already been triggered, I prefer
>> > to have the function tell me if it triggered the switch or not, but
>> > I would not want that to be by raising an exception.
>> The 'file' class also has a 'closed' method, so that's a good model
>> to follow.
> Yes, I find that convincing as well. (I might prefer it to instead
> answer the question âis it currently open?â, i.e. an âopenedâ
> query, but that makes for more awkward English than âclosedâ.)
In the general case you might have an object which you create then open as
an explicit step. Later you close it explicitly before it is discarded. In
that case methods 'opened' and 'closed' both make sense but mean different
things. For a file object, where construction always opens the file, an
opened method (if it existed) should always return true so isn't useful.
Or in other words, I take the word 'opened' as meaning 'has been opened'
which is not the same as 'is currently open'.
Duncan Booth http://kupuguy.blogspot.com
More information about the Python-list