当迭代一个bytes
Python 3 中的对象,获取个体bytes
as ints
:
>>> [b for b in b'123']
[49, 50, 51]
如何获得 1 长度bytes
对象代替?
以下是可能的,但对读者来说不是很明显,并且很可能表现不佳:
>>> [bytes([b]) for b in b'123']
[b'1', b'2', b'3']
如果您担心此代码的性能并且int
由于字节在您的情况下不适合接口,那么您可能应该重新考虑您使用的数据结构,例如使用str
对象代替。
你可以切片bytes
获得 1 长度的对象bytes
对象:
L = [bytes_obj[i:i+1] for i in range(len(bytes_obj))]
有PEP 0467 -- 针对二进制序列的微小 API 改进提出bytes.iterbytes()
method:
>>> list(b'123'.iterbytes())
[b'1', b'2', b'3']
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)