str more precise in 3 as 2.7
Steven D'Aprano
steve+comp.lang.python at pearwood.info
Thu Apr 30 00:29:31 EDT 2015
On Wednesday 29 April 2015 21:24, Cecil Westerhof wrote:
> I am trying to make my modules also work under Python 3. I found that
> str is more precise in Python 3. The expression:
> str(134 / 6.0)
> gives in 2.7.8:
> '22.3333333333'
> and in 3.4.1:
> '22.333333333333332'
The precise details of how floats are displayed may vary. In general, if you
care about the exact details, you should control them by hand using either
C-style % string interpolation, or the format method:
py> x = 134 / 6.0
py> "%.16f" % x
'22.3333333333333321'
py> "{:.16f}".format(x)
'22.3333333333333321'
--
Steve
More information about the Python-list
mailing list