[EMAIL PROTECTED] wrote: > > Sybren Stuvel wrote: >> It has nothing to do with the print command, and everything with >> floating point precision. See http://docs.python.org/tut/node16.html > > > how about the discrepancy between > >>>> print 1.2345 > > 1.2345 > >>>> print "%10.3f" % 1.2345 # seems like a bug > > 1.234 > > the first one, print knows enough to recognize and print it as 1.2345. > however, in the second line, when it is round off, it doesn't know it > is 1.2345 any more. >
But you wouldn't complain about this would you? >>> print "%10.4f" % 1.23445 1.2345 >>> print "%10.3f" % 1.23445 1.234 A value which is slightly than 1.2345 prints to 4 decimal places as 1.2345 and to 3 decimal places as 1.234. That's all that happens with your value as well: 1.2345 is not exactly representable as a floating point number, and the nearest representable number is less than 1.2345. -- http://mail.python.org/mailman/listinfo/python-list