[Python-Dev] redefining is
Andrew Koenig
ark-mlist at att.net
Fri Mar 19 14:19:39 EST 2004
> The problem (if there is any) with 'is' is that it exposes
> implementation details, therefore it should not be used unless on really
> knows what one is doing.
Yes. Also, I think that in general, operations that should be used only by
people who really know what they're doing should be harder to express.
> And 'if obj is None' gains performance by relying on one of these.
> So I would consider 'if obj == None' correct, but unoptimized code.
Actually, it's incorrect, because obj could be of a class that redefines ==
to yield True in that case.
More information about the Python-Dev
mailing list