comparison with None
Steven Howe
howe.steven at gmail.com
Thu Apr 19 02:19:39 EDT 2007
Alan Isaac wrote:
> "Terry Reedy" <tjreedy at udel.edu> wrote in message
> news:mailman.6686.1176934558.32031.python-list at python.org...
>
>> Should be in the reference manual section on comparisons.
>>
>
> Only to this extent:
> http://www.python.org/doc/2.4/ref/comparisons.html
>
> objects of different types always compare unequal, and are ordered
> consistently but arbitrarily.
>
> (This unusual definition of comparison was used to simplify the
> definition of operations like sorting and the in and not in
> operators.
> In the future, the comparison rules for objects of different types
> are
> likely to change.)
>
> ... Most other types compare unequal unless they are the same
> object;
> the choice whether one object is considered smaller or larger than
> another one is made arbitrarily but consistently within one
> execution
> of a program.
>
> This does not provide a direct answer to "why" None comparisons.
> (As far as I can tell, None is less than any object.)
>
> However, Gary Herron's explanation makes sense: this provides a stable
> sort when None is involved, and meets the criterion that objects of
> different types must always compare unequal. However this would also
> be true if None always compared greater than any object, and the current
> behavior does not seem to be guaranteed.
>
> Is that about right?
>
> Cheers,
> Alan Isaac
>
>
>
I love scripting languages ... but sometimes an explicit evaluation that
one would find in
a compiled language is better.
Which is why I suggested using the explicit type(x) == types.NoneType as
opposed to
x is None
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.python.org/pipermail/python-list/attachments/20070418/41da9126/attachment.html>
More information about the Python-list
mailing list