[Python-Dev] typo in 8.1.3.1. Format Specification Mini-Language? (original) (raw)

Terry Reedy tjreedy at udel.edu
Thu May 7 21:35:11 CEST 2009


Neal Becker wrote:

"formatspec ::= [[fill]align][sign][#][0][width][.precision][type]" "The precision is ignored for integer values."

In [36]: '%3x' % 10 Out[36]: ' a' In [37]: '%.3x' % 10 Out[37]: '00a' Apparently, precision is not ignored?

Apparent typo reports should go to the tracker, along with version information. In this case, the Format Specification Mini-Language is for the new str.format() and format() facilities, not for % formatting, which is described in Old String Formatting Operations. Ironically, you report does point to a doc problem: precision is actually not allowed for integer types.

3.0.1

format(10, '3x') ' a'

format(10, '.3x') Traceback (most recent call last): File "<pyshell#2>", line 1, in format(10, '.3x') ValueError: Precision not allowed in integer format specifier

'{0:3x}'.format(10) ' a' '{0:.3x}'.format(10) Traceback (most recent call last): File "<pyshell#4>", line 1, in '{0:.3x}'.format(10) ValueError: Precision not allowed in integer format specifier

http://bugs.python.org/issue5963

Terry Jan Reedy



More information about the Python-Dev mailing list