我需要使用给定的协议在 python 中创建/发送二进制数据。该协议要求固定宽度的字段,并添加空格填充。使用 python 的 struct.pack,我唯一能想到的是,计算空格填充并将其添加到我自己。有没有更好的方法来实现这一目标?
谢谢
struct has a placeholder (x
) for a padding byte you can use:
# pack 2 16 bit values plus one pad byte
from struct import pack
packedStrWithOneBytePad = pack("hhx", 1000, 2000)