python struct.pack数据具有冗余0
我使用这个代码包数据 数据=结构包(“bb3sb4si”,0x11,3,'abc',4,'kkkk',0x12345678 并将其发送到我的服务器 但是我的服务器收到了这个 为什么我有冗余的双0?您正在隐式使用;额外的字节强制最终整数从4字节边界开始。禁用与python struct.pack数据具有冗余0,python,struct,Python,Struct,我使用这个代码包数据 数据=结构包(“bb3sb4si”,0x11,3,'abc',4,'kkkk',0x12345678 并将其发送到我的服务器 但是我的服务器收到了这个 为什么我有冗余的双0?您正在隐式使用;额外的字节强制最终整数从4字节边界开始。禁用与=前缀对齐将删除额外的填充 $ cat pack.py import struct import sys data = struct.pack("=bb3sb4si", 0x11, 3, 'abc', 4, 'kkkk', 0x123456
=
前缀对齐将删除额外的填充
$ cat pack.py
import struct
import sys
data = struct.pack("=bb3sb4si", 0x11, 3, 'abc', 4, 'kkkk', 0x12345678)
sys.stdout.write(data)
$ python pack.py | xxd
0000000: 1103 6162 6304 6b6b 6b6b 7856 3412 ..abc.kkkkxV4.