Hi Robert,

On Fri, 30 Dec 2011 20:05:14 +0000, Robert Kern <robert.k...@gmail.com> wrote:
> On Fri, Dec 30, 2011 at 18:57, Andreas Kloeckner
> <li...@informa.tiker.net> wrote:
> > Hi Robert,
> >
> > On Tue, 27 Dec 2011 10:17:41 +0000, Robert Kern <robert.k...@gmail.com> 
> > wrote:
> >> On Tue, Dec 27, 2011 at 01:22, Andreas Kloeckner
> >> <li...@informa.tiker.net> wrote:
> >> > Hi all,
> >> >
> >> > Two questions:
> >> >
> >> > - Are dtypes supposed to be comparable (i.e. implement '==', '!=')?
> >>
> >> Yes.
> >>
> >> > - Are dtypes supposed to be hashable?
> >>
> >> Yes, with caveats. Strictly speaking, we violate the condition that
> >> objects that equal each other should hash equal since we define == to
> >> be rather free. Namely,
> >>
> >>   np.dtype(x) == x
> >>
> >> for all objects x that can be converted to a dtype.
> >>
> >>   np.dtype(float) == np.dtype('float')
> >>   np.dtype(float) == float
> >>   np.dtype(float) == 'float'
> >>
> >> Since hash(float) != hash('float') we cannot implement
> >> np.dtype.__hash__() to follow the stricture that objects that compare
> >> equal should hash equal.
> >>
> >> However, if you restrict the domain of objects to just dtypes (i.e.
> >> only consider dicts that use only actual dtype objects as keys instead
> >> of arbitrary mixtures of objects), then the stricture is obeyed. This
> >> is a useful domain that is used internally in numpy.
> >>
> >> Is this the problem that you found?
> >
> > Thanks for the reply.
> >
> > It doesn't seem like this is our issue--instead, we're encountering two
> > different dtype objects that claim to be float64, compare as equal, but
> > don't hash to the same value.
> >
> > I've asked the user who encountered the user to investigate, and I'll
> > be back with more detail in a bit.
> 
> I think we've run into this before and tried to fix it. Try to find
> the version of numpy the user has and a minimal example, if you can.

This is what Thomas found:

http://projects.scipy.org/numpy/ticket/2017

Hope this helps,
Andreas

Attachment: pgptsfHBbJ4iz.pgp
Description: PGP signature

_______________________________________________
NumPy-Discussion mailing list
NumPy-Discussion@scipy.org
http://mail.scipy.org/mailman/listinfo/numpy-discussion

Reply via email to