[Numpy-discussion] problem with float64's str()
Stéfan van der Walt
stefan at sun.ac.za
Fri Apr 4 06:14:06 EDT 2008
Hi Will
On 03/04/2008, Will Lee <lee.will at gmail.com> wrote:
> I seem to have problem with floating point printing with the latest numpy,
> python 2.5.2, gcc 4.1.4, and 64-bit linux:
>
> In [24]: print str(0.0012)
> 0.0012
>
> In [25]: a = numpy.array([0.0012])
>
> In [26]: print str(a[0])
> 0.0011999999999999999
>
> In [27]: print numpy.__version__
> 1.0.5.dev4950
>
> It seems like the str() behavior for float64 in the latest numpy's behavior
> is different than Python's default behavior (and previous numpy's behavior).
>
>
> As I have numerous doc tests, this seems to make many of them failed.
> Should the float64's str() behavior be consistent with what's described in
> http://docs.python.org/tut/node16.html? Is there any way
> to get around it so I can get to the default Python behavior?
As a workaround, you can simply remove 'str' from your print statement:
In [17]: print x[0]
0.0012
I am not sure why str([x[0]) is equivalent to repr(0.0012).
Regards
Stéfan
More information about the NumPy-Discussion
mailing list