PEP 378: Format Specifier for Thousands Separator
Steven D'Aprano
steve+comp.lang.python at pearwood.info
Tue May 21 22:59:22 EDT 2013
On Tue, 21 May 2013 14:53:54 -0500, Andrew Berg wrote:
> On 2013.05.21 14:26, Mark Lawrence wrote:
>> Please stop perpetuating this myth, see
>> http://mail.python.org/pipermail/python-dev/2012-February/116789.html
>> and http://bugs.python.org/issue14123
>>
> What myth?
The myth that % string formatting is deprecated. It is not deprecated.
> People should indeed be using .format(),
If it is useful to them, and not too slow, or indeed if they merely want
to. And if not, then not.
This is a good case where the original poster *should* use str.format,
since it does exactly what he wants, and % does not. Python gives you
many tools, and the wise man uses the right tool for the job. Sometimes
that is % and sometimes it is str.format and sometimes it is
string.Template.
That str.format looks like Java is irrelevant. Method call syntax is
common in Python, and is not original to Java. Besides, Python looks like
many languages: some parts look like Java, some parts look like C, some
parts remind me of functional languages like Lisp and Haskell, and some
parts look like Algol or Pascal.
> but no one said % formatting was going away soon.
True, but only for the definition "no one = all the people who insist
that % is deprecated, or soon to be deprecated".
> Also, the suggested change to the docs
> wasn't made and the issue is closed. The current docs do not say that %
> formatting isn't going to be deprecated, but it does mention its caveats
> and suggests .format(). If you are trying to say that % formatting will
> never ever go away, then you are wrong. It is highly unlikely to go away
> in a 3.x release, but /may/ get phased out in Python 4.0.
What happens in Python 4000 is irrelevant. If somebody is trying to
"future proof" their code for a version that *may never exist*, and if it
does exist is likely to be six or eight years away from even starting the
design phase, they are wasting their time. It is hard enough to track a
moving target, it is impossible to track a target that isn't even a gleam
in GvR's eye yet.
--
Steven
More information about the Python-list
mailing list