struct.pack 不紧包

贾克

我想创建并稍后发送一个 5 字节的结构,如下所示:

import struct
struct.pack("?i", True, 0x01020304)
>>b'\x01\x00\x00\x00\x04\x03\x02\x01'

但是正如您所看到的,由于某种原因,1 字节的布尔值被填充了 3 个字节或填充为一个整数。我想要的结果是:

>>b'\x01\x04\x03\x02\x01'

我该怎么做,为什么我的解决方案不起作用?它似乎根据文档正确使用

贾克

我的问题通过对这个问题的回答解决了所述=在格式串的起始字符告诉包方法不对齐数据,而是产生完全相同的指定长度的字节串。本章规定了格式字符是否允许对齐不知怎的,我错过了。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章