Python中 struct使用

2021-04-12  本文已影响0人  忘了呼吸的那只猫

有的时候需要用python处理二进制数据,比如,存取文件,socket操作时.这时候,可以使用pythonstruct模块来完成.可以用 struct来处理c语言中的结构体.

struct模块中最重要的三个函数是

struct中支持的格式如下表:

Format C Type Python 字节数
x pad byte no value 1
c char string of length 1 1
b signed char integer 1
B unsigned char integer 1
? _Bool bool 1
h short integer 2
H unsigned short integer 2
i int integer 4
I unsigned int integer or long 4
l long integer 4
L unsigned long long 4
q long long long 8
Q unsigned long long long 8
f float float 4
d double float 8
s char[] string 1
p char[] string 1
P void * long

常用:

import struct
a = 12.34
#将浮点数a变为二进制
bytes = struct.pack('f',a)
#转换回float
floats = struct.unpack('f', bytes)

b=10
#将整数b变为二进制
bytes = struct.pack('i',b)
#转换回int
int = struct.unpack('i', bytes)
上一篇 下一篇

猜你喜欢

热点阅读