[Python-Dev] redefining is
Aahz
aahz at pythoncraft.com
Thu Mar 18 11:45:38 EST 2004
On Thu, Mar 18, 2004, Barry Warsaw wrote:
> On Thu, 2004-03-18 at 10:23, Jewett, Jim J wrote:
>>
>> There is an idiom (I've seen it more in Lisp than in python)
>> of creating a fresh object to act as a sentinel.
>
> A very common use case in Python is where None is a valid value in a
> dictionary:
>
> missing = object()
> if d.get('somekey', missing) is missing:
> # it ain't there
>
> It even reads well!
Ugh. While I agree that the idiom has its place, this ain't one of
them; you should be using ``in`` (or ``has_key()``). The standard idiom
is even more readable, and there should be only one way to do it. Maybe
you meant something more like
if d['somekey'] is missing:
--
Aahz (aahz at pythoncraft.com) <*> http://www.pythoncraft.com/
"usenet imitates usenet" --Darkhawk
More information about the Python-Dev
mailing list