[Python-Dev] PEP 460 reboot (original) (raw)

Antoine Pitrou solipsis at pitrou.net
Mon Jan 13 12:41:18 CET 2014


On Sun, 12 Jan 2014 18:11:47 -0800 Guido van Rossum <guido at python.org> wrote:

On Sun, Jan 12, 2014 at 5:27 PM, Ethan Furman <ethan at stoneleaf.us> wrote: > On 01/12/2014 04:47 PM, Guido van Rossum wrote: >> %s seems the trickiest: I think with a bytes argument it should just >> insert those bytes (and the padding modifiers should work too), and >> for other types it should probably work like %a, so that it works as >> expected for numeric values, and with a string argument it will return >> the ascii()-variant of its repr(). Examples: >> >> b'%s' % 42 == b'42' >> b'%s' % 'x' == b"'x'" (i.e. the three-byte string containing an 'x' >> enclosed in single quotes) > > I'm not sure about the quotes. Would anyone ever actually want those in the > byte stream?

Perhaps not, but it's a hint that you should probably think about an encoding. It's symmetric with how '%s' % b'x' returns "b'x'". Think of it as payback time. :-)

What is the use case for embedding a quoted ASCII-encoded representation in a byte stream?

Regards

Antoine.



More information about the Python-Dev mailing list