一 python 结构体
* python struct 模块可以用来在存储二进制文件,广泛用在文件系统,网络连接领域。
* 它可以用在c语言和python语言之间的数据的格式转换。
二 Python Struct Functions
这里有5个重要的数据结构模块函数:pack(),unpack(),calcsize(),pack_info()和unpack_from(). 这些函数一般用来把其他文件转成二进制文件.
常用的数据格式有:
?: boolean
h: short
l: long
i: int
f: float
q: long long int
三 函数:Python struct.pack()
这个函数的作用就是把一系列植包装成字符串:输入参数必须要和输入格式严格匹配:
example:
import struct var = struct.pack('hhi',5,6,15) print(var) var = struct.pack('iii',19,20,25) print(var)
结果:
b'\x05\x00\x06\x00\x0f\x00\x00\x00' b'\x13\x00\x00\x00\x14\x00\x00\x00\x19\x00\x00\x00'
四 函数:Python struct.unpack()
函数unpack的作用是把变量转换成特定格式的初始化模样。这个函数一直返回一个: tuple 结构体,哪怕是只有一个变量。下面是unpack的一个例子:
import struct var = struct.pack('hhi',5,6,15) print(var) ivar = struct.unpack('hhi',var) print(ivar)
很明显,需要在入参中输入需要转换的原始变量的类型才行:
b'\x05\x00\x06\x00\x0f\x00\x00\x00' (5, 6, 15)
五 函数:Python struct calcsize()
该函数的作用是计算和返回特定字符串的长度,如下所示:
import struct var = struct.pack('hhi',5,6,15) print(var) print("Size of the string representation:%{}.".format(struct.calcsize('hhi')))
结果:
b'\x05\x00\x06\x00\x0f\x00\x00\x00' Size of the string representation:%8.
作者:虚生 出处:https://www.cnblogs.com/dylancao/ 以音频和传感器算法为核心的智能可穿戴产品解决方案提供商 ,提供可穿戴智能软硬件解决方案的设计,开发和咨询服务。 勾搭热线:邮箱:1173496664@qq.com weixin:18019245820 市场技术对接群:347609188 |