模块说明(参考官方手册):
此模块执行Python值和表示为Python 对象的C 结构之间的转换bytes。这可用于处理存储在文件中的二进制数据或来自网络连接以及其他来源。它使用 Format Strings作为C结构布局的简洁描述以及与Python值的预期转换。
注意 默认情况下,打包给定C 结构的结果包括填充字节,以便维护所涉及的C类型的正确对齐; 类似地,在拆包时考虑对齐。选择此行为是为了使压缩结构的字节与相应C 结构的内存中的布局完全对应。要处理与平台无关的数据格式或省略隐式填充字节,请使用standard大小和对齐而不是 native大小和对齐:有关详细信息,请参阅字节顺序,大小和对齐。
(1)用途
1、按照指定格式将Python数据转换为字符串,该字符串为字节流
如:网络传输时,不能传输int,此时先将int转化为字节流,然后再发送;
2、按照指定格式将字节流转换为Python指定的数据类型;
3、处理二进制数据,如果用struct来处理图片文件的话,需要使用‘rb’/‘wb’以二进制(字节流)读写的方式来处理文件;
4、处理c语言中的结构体;
(2)格式化字符串
对齐方式:
默认情况下,C类型以机器的本机格式和字节顺序表示,并在必要时通过跳过填充字节进行