If you are concerned about performance of this code and an int
as a byte is not suitable interface in your case then you should probably reconsider data structures that you use e.g., use str
objects instead.
You could slice the bytes
object to get 1-length bytes
objects:
L = [bytes_obj[i:i+1] for i in range(len(bytes_obj))]
There is PEP 0467 — Minor API improvements for binary sequences that proposes bytes.iterbytes()
method:
>>> list(b'123'.iterbytes())
[b'1', b'2', b'3']