当我尝试执行以下操作时:
struct.pack("B",32)
32是int
类型。
我期待"\x20"
,但我得到以下(空白):" "
我需要使用struct()
作为一个字节,因为我想把它放在bytearray()
中,看起来像这样:
bytearray(b'\x20')
除了“B”之外,我在struct.pack()
上尝试过其他编码,但我可能会遗漏一些东西。
如果你这样做:
>>> b" " == bytearray(b"\x20")
True
你会看到你正在得到你期望的东西,只是在你没有想到的代表中。
ascii table上的space char是0x20
>>> print(b'\x20')
b' '
>>> struct.pack('B', 32)
b' '