On 08May2019 00:18, Greg Ewing <greg.ew...@canterbury.ac.nz> wrote:
Steven D'Aprano wrote:
That suggests a possible pair of constructors:
bytes.from_int(n) -> equivalent to b'%d' % n
bytes.ord(n) -> equivalent to bytes((n,))
I don't see how bytes.from_int(n) is any clearer about what it
does than just bytes(n). If we're going to have named constructors,
the names should indicate *how* the construction is being done,
not just repeat the type of the argument.
How about from_size(n) and from_ord(n)? The former to make a NUL filled
bytes of size n, the latter to make a single byte bytes with element 0
having value n.
Preemptively one could argue for from_size having an optional fill
value, default 0. I think I'm -0 on that because I can't imagine a
likely use case and it would slightly slow down every use. I think I'd
argue for a from_iter instead, to support an arbitrary fill
pattern/sequence. That avoids slowing the common case and provides
flexibility at the same time.
Cheers,
Cameron Simpson <c...@cskk.id.au>
_______________________________________________
Python-ideas mailing list
Python-ideas@python.org
https://mail.python.org/mailman/listinfo/python-ideas
Code of Conduct: http://python.org/psf/codeofconduct/