struct – Pack and unpack primitive data types.
Pack and unpack primitive data types.
This module implements a subset of the corresponding CPython module,
as described below. For more information, refer to the original
CPython documentation: struct
.
The following byte orders are supported:
Character |
Byte order |
Size |
Alignment |
---|---|---|---|
@ |
native |
native |
native |
< |
little-endian |
standard |
none |
> |
big-endian |
standard |
none |
! |
network (= big-endian) |
standard |
none |
The following data types are supported:
Format |
C Type |
Python type |
Standard size |
---|---|---|---|
b |
signed char |
integer |
1 |
B |
unsigned char |
integer |
1 |
h |
short |
integer |
2 |
H |
unsigned short |
integer |
2 |
i |
int |
integer ( |
4 |
I |
unsigned int |
integer ( |
4 |
l |
long |
integer ( |
4 |
L |
unsigned long |
integer ( |
4 |
q |
long long |
integer ( |
8 |
Q |
unsigned long long |
integer ( |
8 |
e |
n/a (half-float) |
float ( |
2 |
f |
float |
float ( |
4 |
d |
double |
float ( |
8 |
s |
char[] |
bytes |
|
P |
void * |
integer |
Functions
|
Return the number of bytes needed to store the given fmt. |
|
Pack the values v1, v2, ... according to the format string fmt. |
|
Pack the values v1, v2, ... according to the format string fmt |
|
Unpack from the data according to the format string fmt. |
|
Unpack from the data starting at offset according to the format string |
Module Contents
- struct.pack(fmt, v1, *args, **kwargs) bytes
Pack the values v1, v2, … according to the format string fmt. The return value is a bytes object encoding the values.
- struct.pack_into(fmt, buffer, offset, v1, *args, **kwargs) Incomplete
Pack the values v1, v2, … according to the format string fmt into a buffer starting at offset. offset may be negative to count from the end of buffer.
- struct.unpack(fmt, data) Tuple
Unpack from the data according to the format string fmt. The return value is a tuple of the unpacked values.
- struct.unpack_from(fmt, data, offset=0) Tuple
Unpack from the data starting at offset according to the format string fmt. offset may be negative to count from the end of data. The return value is a tuple of the unpacked values.