On 29/04/2015 12: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'
Was not very hard to solve:
if python_version == 3:
output06[5] = '22.333333333333332'
output10[5] = '23.333333333333332'
output10[8] = '24.77777777777778'
Earlier I did:
import sys
# For when the difference between 2 and 3 is important
python_version = sys.version_info[0]
At the moment I use it only once, but it is never bad to be prepared.
They simply output different numbers of digits by default. Just control
the number of digits that you want to see and in this case you needn't
worry again about Python 2 vs 3 differences. See either
https://docs.python.org/3/library/string.html#formatspec
or
https://docs.python.org/3/library/stdtypes.html#printf-style-string-formatting
--
My fellow Pythonistas, ask not what our language can do for you, ask
what you can do for our language.
Mark Lawrence
--
https://mail.python.org/mailman/listinfo/python-list