在Python 3.3中,我需要将一个整数转换为三个字节的中间部分,以通过串行连接发送该整数。
也就是说,我需要具有一个值:b'\x4c\x00\x46'
,除了\ x00字节需要采用整数变量的单字节值之外,该整数变量的范围可以从0到255。我认为chr(value)可以,但是给出一个字符串而不是一个字节。
例如,如果值是255,我想获取b'\x4c\xff\x46'
。
使用bytearray
:
>>> b'\x4c\x00\x46'
b'L\x00F'
>>> a = bytearray(b'\x4c\x00\x46')
>>> a[1] = 255
>>> a
bytearray(b'L\xffF')
>>> bytes(a)
b'L\xffF'
您也可以list
代替使用bytearray
。但是使用list
在Python 2.x中不起作用。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句