struct – 打包和解包原语数据类型

This module implements a subset of the corresponding CPython module, as described below. For more information, refer to the original CPython documentation: struct .

Supported size/byte order prefixes: @ , < , > , ! .

Supported format codes: b , B , h , H , i , I , l , L , q , Q , s , P , f , d (the latter 2 depending on the floating-point support).

Difference to CPython

Whitespace is not supported in format strings.

函数

struct. calcsize ( fmt )

Return the number of bytes needed to store the given fmt .

struct. pack ( fmt , v1 , v2 , ... )

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 , v2 , ... )

Pack the values v1 , v2 , … according to the format string fmt buffer starting at offset . offset may be negative to count from the end of buffer .

struct. unpack ( fmt , data )

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 , / )

Unpack from the data starting at offset according to the format string fmt . offset may be negative to count from the end of buffer . The return value is a tuple of the unpacked values.