您可以对byte
对象使用切片:
>>> value = b'\x00\x01\x00\x02\x00\x03'
>>> value[:2]
b'\x00\x01'
>>> value[2:4]
b'\x00\x02'
>>> value[-2:]
b'\x00\x03'
但是,在处理这些框架时,您可能还想了解memoryview()
对象。这些使您可以将字节解释为C数据类型,而无需进行任何额外的工作,只需在基础字节上投射“视图”即可:
>>> mv = memoryview(value).cast('H')
>>> mv[0], mv[1], mv[2]
256, 512, 768
mv
现在,该对象是一个内存视图,每2个字节将其解释为无符号的short;因此它现在具有长度3,并且每个索引都是基于基础字节的整数值。