On Tue, Sep 22, 2015 at 8:16 AM, Tim Peters <tim.pet...@gmail.com> wrote:

> [Tim]
> > ...
> > The
> > top-level operation on the RHS is datetime.fromtimestamp().  However,
> > it didn't pass a tzinfo, so it creates a naive datetime.  Assuming dt
> > was aware to begin with, the attempt to compare will always (gap or
> > not) raise an exception.
>
> Oops!  In current Python, comparing naive and aware via `==` just
> returns False.  That's even more confusing ;-)
>

Hm, but that's in general how == is *supposed* to work between objects of
incompatible types. < and > are supposed to fail but == is supposed to
return False (the __eq__ should return NotImplemented). If == ever raises
an exception, having two different objects as dict keys can cause random,
hard-to-debug failures.

-- 
--Guido van Rossum (python.org/~guido)
_______________________________________________
Python-Dev mailing list
Python-Dev@python.org
https://mail.python.org/mailman/listinfo/python-dev
Unsubscribe: 
https://mail.python.org/mailman/options/python-dev/archive%40mail-archive.com

Reply via email to