[Python-Dev] Incorrect behavior in str.format() method when padding with '\x00'
Eric V. Smith
eric at trueblade.com
Thu Apr 3 19:12:20 CEST 2014
On 04/03/2014 11:37 AM, R. David Murray wrote:
> On Thu, 03 Apr 2014 11:20:20 -0400, "Eric V. Smith" <eric at trueblade.com> wrote:
>> On 04/02/2014 04:08 PM, John Tyree wrote:
>>>
>>> Hi all,
>>>
>>> Is there any particularly reason for the following behavior on both
>>> 2.7.6 and 3.4.0 ?
>>>
>>> >>> "{:\x00<5}".format(2)
>>> '2 '
>>> >>>
>>> "{:\x20<5}".format(2)
>>>
>>> '2 '
>>> >>>
>>> "{:\x01<5}".format(2)
>>>
>>> '2\x01\x01\x01\x01'
>>> >>> "{:\x00<5}".format(2) ==
>>> "{:\x20<5}".format(2)
>>>
>>> True
>>>
>>>
>>> The docs say "If a valid /align/ value is specified, it can be preceded
>>> by a /fill/ character that can be any character and defaults to a space
>>> if omitted," so I'm inclined to call this a good old fashioned bug.
>>
>> I'd say it's a bug. Please open a bug, assign it to me (eric.smith), and
>> I'll comment on it there.
>
> There is an existing bug report (assigned to you :), with a partial patch:
> http://bugs.python.org/issue12546
Heh. I'll add this to my list of things to do at PyCon sprints.
Eric.
More information about the Python-Dev
mailing list