[Numpy-discussion] Array printing differences between 64- and 32-bit platforms
Ken Basye
kbasye1 at jhu.edu
Wed Oct 15 12:52:56 EDT 2008
Hi Folks,
In porting some code to a 64-bit machine, I ran across the following
issue.
On the 64-bit machine, an array with dtype=int32 prints the dtype
explicitly, whereas on
a 32 bit machine it doesn't. The same is true for dtype=intc (since
'intc is int32' --> True),
and the converse is true for dtype=int64 and dtype=longlong. Arrays
with dtype of plain int
both print without the dtype, but then you're not using the same
underlying size anymore.
I think this is handled in core/numeric.py in array_repr and just
above, where certain types
are added to _typelessdata if they are subclasses of 'int'. The
issubclass test returns different values
on platforms with different word lengths.
This difference can make doctests fail and although there are doctest
tricks to prevent the failure,
they're a bit annoying to use. I was wondering about introducing a new
print setting that forced
dtypes to be printed always. Is there any support for that?
Any other ideas would also be most welcome.
Thanks,
Ken Basye
More information about the NumPy-Discussion
mailing list