[Python-Dev] PEP 461 - Adding % and {} formatting to bytes
Antoine Pitrou
solipsis at pitrou.net
Wed Jan 15 17:04:15 CET 2014
On Wed, 15 Jan 2014 15:47:43 +0000 (UTC)
Neil Schemenauer <nas at arctrix.com> wrote:
>
> Objects that implement __str__ can also implement __bytes__ if they
> can guarantee that ASCII characters are always returned, no matter
> what the *value*
I think that's a slippery slope. __bytes__ should mean that the object
has a well-known bytes equivalent or encoding, not that its __str__
happens to be pure ASCII.
(for example, it would be fine for a HTTP message class to define a
__bytes__ method)
Also, consider that if e.g. float had a __bytes__ method, then
bytes(2.0) would start returning b'2.0', while bytes(2) would still
need to return b'\x00\x00'.
Regards
Antoine.
More information about the Python-Dev
mailing list