[Numpy-discussion] numpy type mismatch
Olivier Delalleau
shish at keba.be
Fri Jun 10 16:08:19 EDT 2011
It's ok to have two different dtypes (in the sense that "d1 is not d2") such
that they represent the same kind of data (in the sense that d1 == d2).
However I think your very first test should have returned True (for what
it's worth, it returns true with 1.5.1 on Windows 32 bit).
-=- Olivier
2011/6/10 Benjamin Root <ben.root at ou.edu>
> Came across an odd error while using numpy master. Note, my system is
> 32-bits.
>
> >>> import numpy as np
> >>> type(np.sum([1, 2, 3], dtype=np.int32)) == np.int32
> False
> >>> type(np.sum([1, 2, 3], dtype=np.int64)) == np.int64
> True
> >>> type(np.sum([1, 2, 3], dtype=np.float32)) == np.float32
> True
> >>> type(np.sum([1, 2, 3], dtype=np.float64)) == np.float64
> True
>
> So, only the summation performed with a np.int32 accumulator results in a
> type that doesn't match the expected type. Now, for even more strangeness:
>
> >>> type(np.sum([1, 2, 3], dtype=np.int32))
> <type 'numpy.int32'>
> >>> hex(id(type(np.sum([1, 2, 3], dtype=np.int32))))
> '0x9599a0'
> >>> hex(id(np.int32))
> '0x959a80'
>
> So, the type from the sum() reports itself as a numpy int, but its memory
> address is different from the memory address for np.int32.
>
> Weirdness...
> Ben Root
>
> _______________________________________________
> NumPy-Discussion mailing list
> NumPy-Discussion at scipy.org
> http://mail.scipy.org/mailman/listinfo/numpy-discussion
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.python.org/pipermail/numpy-discussion/attachments/20110610/36304173/attachment.html>
More information about the NumPy-Discussion
mailing list