Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > comp.lang.python > #32493

Float to String "%.7e" - diff between Python-2.6 and Python-2.7

Newsgroups comp.lang.python
Date 2012-10-30 07:47 -0700
Message-ID <69712207-3e7c-4dc2-be36-9b1a94f34c24@googlegroups.com> (permalink)
Subject Float to String "%.7e" - diff between Python-2.6 and Python-2.7
From andrew.mackeith@3ds.com

Show all headers | View raw


When formatting a float using the exponential format, the rounding is different in Python-2.6 and Python-2.7. See example below.
Is this intentional?

Is there any way of forcing the Python-2.6 behavior (for compatibility reasons when testing)?

>c:\python26\python
r:\asiData\abaObjects\lib>c:\python26\python
Python 2.6.5 (r265:79096, Mar 19 2010, 18:02:59) [MSC v.1500 64 bit (AMD64)] on win32
Type "help", "copyright", "credits" or "license" for more information.
>>> x = [2.096732130e+02,2.096732140e+02,2.096732150e+02,2.096732151e+02,2.096732160+02]
>>> for a in x:
...     print ' %.9e    %.7e'%(a,a)
...
 2.096732130e+02    2.0967321e+02
 2.096732140e+02    2.0967321e+02
 2.096732150e+02    2.0967322e+02 <<<<<<<<
 2.096732151e+02    2.0967322e+02
 4.096732160e+00    4.0967322e+00
>>> for a in x:
...     print '%.9e   %.7e'%(-a,-a)
...
-2.096732130e+02   -2.0967321e+02
-2.096732140e+02   -2.0967321e+02
-2.096732150e+02   -2.0967322e+02 <<<<<<<<
-2.096732151e+02   -2.0967322e+02
-4.096732160e+00   -4.0967322e+00
>>> ^Z

>c:\python27\python
Python 2.7.3 (default, Apr 10 2012, 23:24:47) [MSC v.1500 64 bit (AMD64)] on win32
Type "help", "copyright", "credits" or "license" for more information.
>>> x = [2.096732130e+02,2.096732140e+02,2.096732150e+02,2.096732151e+02,2.096732160+02]
>>> for a in x:
...     print ' %.9e    %.7e'%(a,a)
...
 2.096732130e+02    2.0967321e+02
 2.096732140e+02    2.0967321e+02
 2.096732150e+02    2.0967321e+02 <<<<<<<<
 2.096732151e+02    2.0967322e+02
 4.096732160e+00    4.0967322e+00
>>> for a in x:
...     print '%.9e   %.7e'%(-a,-a)
...
-2.096732130e+02   -2.0967321e+02
-2.096732140e+02   -2.0967321e+02
-2.096732150e+02   -2.0967321e+02 <<<<<<<<
-2.096732151e+02   -2.0967322e+02
-4.096732160e+00   -4.0967322e+00
>>> ^Z

>
Andrew MacKeith

Back to comp.lang.python | Previous | NextNext in thread | Find similar | Unroll thread


Thread

Float to String "%.7e" - diff between Python-2.6 and Python-2.7 andrew.mackeith@3ds.com - 2012-10-30 07:47 -0700
  Re: Float to String "%.7e" - diff between Python-2.6 and Python-2.7 Duncan Booth <duncan.booth@invalid.invalid> - 2012-10-30 15:10 +0000
  Re: Float to String "%.7e" - diff between Python-2.6 and Python-2.7 Dave Angel <d@davea.name> - 2012-10-30 11:13 -0400
  Re: Float to String  Mark Dickinson <mdickinson@enthought.com> - 2012-10-31 15:39 +0000

csiph-web