[Python-Dev] transitioning from % to {} formatting
Barry Warsaw
barry at python.org
Wed Sep 30 20:27:59 CEST 2009
On Sep 30, 2009, at 1:01 PM, Antoine Pitrou wrote:
> Why not allow logging.Formatter to take a callable, which would in
> turn call the
> callable with keyword arguments?
>
> Therefore, you could write:
> logging.Formatter("{asctime} - {name} - {level} - {msg}".format)
This is a very interesting idea.
Note that one of the reasons to /at least/ support {}-strings also is
that %-strings are simply too error prone in many situations. For
example, if I decide to support internationalization of log format
strings, and all I can use is %-strings, it's almost guaranteed that I
will have bugs because a translator forgot the trailing 's'. This
exactly the motivation that led to PEP 292 $-strings.
In fact, while we're at it, it would be kind of cool if I could use $-
strings in log templates. Antoine's idea of accepting a callable
might fit that bill nicely.
-Barry
-------------- next part --------------
A non-text attachment was scrubbed...
Name: PGP.sig
Type: application/pgp-signature
Size: 832 bytes
Desc: This is a digitally signed message part
URL: <http://mail.python.org/pipermail/python-dev/attachments/20090930/c8c788f5/attachment.pgp>
More information about the Python-Dev
mailing list