
On Sep 9, 2021, at 10:56, Ethan Furman <ethan@stoneleaf.us> wrote:
On 9/9/21 9:37 AM, Barry Warsaw wrote:
While I think int.to_bytes() is pretty obscure (I knew about it, forgot about it, and learned about it again!) I’m not so sure it’s any less obscure than a proposed bytes.fromint().
So why don’t we just relax int.to_bytes()’s signature to include natural default values:
int.to_bytes(length=1, byteorder=sys.byteorder, *, signed=False)
Then I ought to be able to just do
>>> (65).to_bytes() b’A’
That seems so much worse than
bchr(65) b'A'
;-)
Maybe, but given that you can *already* do the equivalent of bchr() with:
(65).to_bytes(1, sys.byteorder) b'A'
it seems like a small stretch to make that more usable, and that would outweigh adding a difficult to understand new builtin. TOOWTDI. In case you really want bchr(): def bchr(x): return x.to_bytes(1, sys.byteorder)
bchr(65) b’A'
Cheers, -Barry