[Python-Dev] Different float formatting on Windows and Linux
Eric Smith
eric+python-dev at trueblade.com
Mon Feb 18 12:12:11 CET 2008
The tests for float.__format__ are breaking on Windows, because of this
issue: http://bugs.python.org/issue1600. Basically, Windows is using 3
digits for exponents < 100, and Linux (and at least MacOS) are using 2.
The patch attached to the issue proposes changing all platforms to use
at least 3 digits. It affects both '%' formatting and __format__
formatting. Altering all float formatting involving exponents is a
pretty big change to make, and I want to get opinions here before making
this change.
Guido's comments in the issue are supportive, and I agree that the
consistency would be good. I'm just concerned about changing the output
for existing code.
I suppose another option would be to modify Windows to use 2 digits for
exponents < 100. I guess it just depends on whose output you want to break!
I think the options are:
1: Do nothing. Adapt the tests to deal with the differences.
2: Force 3 characters for exponents < 100.
3: Force 2 characters for exponents < 100.
Eric.
More information about the Python-Dev
mailing list