[Python-ideas] __missing__ object/keyword
Terry Reedy
tjreedy at udel.edu
Sat Nov 8 21:05:36 CET 2008
Jim Jewett wrote:
> On Thu, Nov 6, 2008 at 3:31 PM, George Sakkis <george.sakkis at gmail.com> wrote:
>> Several times I find myself using the following idiom:
>
>> _Missing = object() # sentinel
>
>> def foo(x, y=_Missing):
>> if y is _Missing:
>> do_this
>> else:
>> do_that
>
> And I often catch myself trying to write
>
> def foo(x, y=object()):
> if y is ... # oops, I need to define the y *outside* the function.
if type(y) is object: ...
And no, there is no problem if a foolish caller passes an object(),
because such has no meaning other than what your sentinal y means.
More information about the Python-ideas
mailing list