[Python-3000] PEP 3101 str.format() equivalent of '%#o/x/X'?

Guido van Rossum guido at python.org
Fri May 30 21:37:00 CEST 2008


Of course.

On Fri, May 30, 2008 at 12:23 PM, Eric Smith
<eric+python-dev at trueblade.com> wrote:
> Guido van Rossum wrote:
>>
>> I'd be fine with adding '#' back to the formatting language for hex and
>> oct.
>
> And bin, I assume?
>
>>
>> On Thu, May 29, 2008 at 5:45 PM, Eric Smith
>> <eric+python-dev at trueblade.com> wrote:
>>>
>>> wesley chun wrote:
>>>>
>>>> On 5/29/08, Eric Smith <eric+python-dev at trueblade.com> wrote:
>>>>>
>>>>> Marcin 'Qrczak' Kowalczyk wrote:
>>>>>>
>>>>>> Except that it works incorrectly for negative numbers.
>>>>
>>>> wow, that is a great point.  i didn't think of this either. it makes
>>>> it very inconvenient (see below) and makes it more difficult to say
>>>> we've completed replaced the '%' operator.
>>>>
>>>>
>>>>>  I can't really think of any other way that doesn't involve converting
>>>>> the
>>>>> number to a string and then operating on that, just to get the sign.
>>>>
>>>> here's one way of doing it without converting to a string first (it's
>>>> ugly
>>>> too):
>>>>
>>>>>>> i = -45
>>>>>>> '{0}0x{1:x}'.format('-' if i < 0 else '', abs(i))
>>>>
>>>> '-0x2d'
>>>
>>> Agreed, ick!
>>>
>>>> thx for putting it (back) in,
>>>
>>> I didn't say I would, I said I would if a decision was reached :)  I'd
>>> like
>>> to see some more consensus, and I hope that Talin (the PEP author) chimes
>>> in.
>>>
>>> Eric.
>>>
>>> _______________________________________________
>>> Python-3000 mailing list
>>> Python-3000 at python.org
>>> http://mail.python.org/mailman/listinfo/python-3000
>>> Unsubscribe:
>>> http://mail.python.org/mailman/options/python-3000/guido%40python.org
>>>
>>
>>
>>
>
>



-- 
--Guido van Rossum (home page: http://www.python.org/~guido/)


More information about the Python-3000 mailing list