comparison with None

Steven Howe howe.steven at
Thu Apr 19 02:19:39 EDT 2007

Alan Isaac wrote:
> "Terry Reedy" <tjreedy at> wrote in message
> news:mailman.6686.1176934558.32031.python-list at
>> Should be in the reference manual section on comparisons.
> Only to this extent:
>         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: <>

More information about the Python-list mailing list