Robert Dailey wrote:
Hello,According to the Python 3.1 documentation, I can have a format specification like so: print( 'This is a hex number: {:#08x}'.format( 4 ) ) This will print: This is a hex number: 0x000004 I notice that the '0x' portion is counted in the width, which was specified as 8. This seems wrong to me. Is this by design? If so, why? I expect that the width portion to only apply to the input + padding only. I don't consider the '0x' portion part of the padding. But maybe it is...
The width portion is the width of what is produced by the specification. The '#' tells it to add '0x', so that's part of what's produced. If you don't want the '0x' to be counted then don't include '#' in the specification. It makes perfect sense! :-) -- http://mail.python.org/mailman/listinfo/python-list
