# 基本使用方法
import struct
struct.pack(">bhl", 1, 2, 3)#>表示小端字节序,bhl表示C中对应数据类型,详见下表
>>>b'\x01\x00\x02\x00\x00\x00\x03'
当Format字符串以'<','>','='开头时表示使用小端、大端、本机字节序。
!表示网络中的字节序,一般也是大端序,@表示本机字节序但是考虑字节对齐。
Format | C Type | Python type | Standard size |
---|---|---|---|
| pad byte | no value | |
| char | bytes of length 1 | 1 |
| signed char | integer | 1 |
| unsigned char | integer | 1 |
| _Bool | bool | 1 |
| short | integer | 2 |
| unsigned short | integer | 2 |
| int | integer | 4 |
| unsigned int | integer | 4 |
| long | integer | 4 |
| unsigned long | integer | 4 |
| long long | integer | 8 |
| unsigned long long | integer | 8 |
|
| integer | |
|
| integer | |
| (6) | float | 2 |
| float | float | 4 |
| double | float | 8 |
| char[] | bytes | |
| char[] | bytes | |
| void* | integer |