Python中的结构体
我一直搞不懂在Python中,结构体里的pack是怎么工作的。
比如说,我需要把4个字节的数据放在一个结构体里。假设第一个字节的值是4,第二个字节是5,第三个字节是6,最后一个字节是7。那么我可以这样写:
a = chr(4 & 0x0f)
b = chr(5 & 0x0f)
c = chr(6 & 0x0f)
d = chr(7 & 0x0f)
现在我需要用pack把它们打包成一个结构体。我该怎么做呢?
我也希望能详细解释一下,因为我不仅仅是为了上面的例子,我需要理解怎么做……
这是相关链接 struct
1 个回答
3
你可以用这个来实现
import struct
struct.pack('4B', 4, 6, 7, 8,)
struct
就像是一个方便的工具,可以帮你构建字节结构,特别是在处理低级协议的时候非常有用。你可以参考这个模块来进行字符串格式化。看看我写的这个wol脚本,查看一下 这个文件,看看它是如何使用struct模块来构建WOL数据包的。