是否可以将4个字符包装到python中的int中并将其表示为bytearray中的一个值?我正在考虑将它打包成一个结构,但如果我尝试像
那样会遇到错误 characters = b'abcd'
struct.pack('i',characters)
答案 0 :(得分:4)
我不确定我是否理解你的问题 - 如果你想把一个字节串并把它变成一个整数,在python3.x上,这很容易:
import sys
value = int.from_bytes(b'abcd', sys.byteorder) # for me, byteorder is `'little'`
assert value == 1684234849
在python2.x上,你解压结构(也适用于python3.x):
value, = struct.unpack('<i', b'abcd')
assert value == 1684234849
现在,如果您想将此值放入bytearray中 - 答案是否定的,那么您就无法做到。 bytearray
仅接受值0
- &gt; 255