python3 binascii.hexlify ...
Cameron Simpson
cs at zip.com.au
Sat Feb 9 15:32:20 EST 2013
On 09Feb2013 22:26, Chris Angelico <rosuav at gmail.com> wrote:
| On Sat, Feb 9, 2013 at 10:10 PM, Peter Otten <__peter__ at web.de> wrote:
| > """Return the hexadecimal representation of the binary data. Every byte of
| > data is converted into the corresponding 2-digit hex representation.
| > """
| >
| > makes it pretty clear that the function is operating on bytes, not str.
Well of course. I want a hexadecimal string representation of a chunk of
bytes. It should be producing a string.
| That doesn't necessarily mean it has to return bytes, though. It's
| taking binary data and producing something that's plausibly either
| bytes or str. It's human-readable and would definitely make sense to
| be str (for instance, hex() returns a str), so imo this should be made
| very clear in the docs. Maybe:
|
| """Return the hexadecimal representation of the binary data. Every byte of
| data is converted into two bytes with the corresponding hex
| representation in ASCII.
| """
|
| or somesuch?
Only if returning a string would break something relying on hexlify
returning bytes. The natural way to write this function is to have it
return a string.
_If_ there's some dependency in the stdlib, maybe a doc fix would do.
But otherwise IMO the function should be returning a string.
What is the use case for returning bytes that just _look_ like a string?
It is returning a textual representation; without a good reason, that
should be a string.
--
Cameron Simpson <cs at zip.com.au>
Because of its special customs, crossposting between alt.peeves and normal
newsgroups is discouraged. - Cameron Spitzer
More information about the Python-list
mailing list