国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > Python > 正文

Python使用struct處理二進制的實例詳解

2020-02-16 10:12:59
字體:
來源:轉載
供稿:網友

Python使用struct處理二進制的實例詳解

有的時候需要用python處理二進制數據,比如,存取文件,socket操作時.這時候,可以使用python的struct模塊來完成.可以用 struct來處理c語言中的結構體. 

struct模塊中最重要的三個函數是pack(), unpack(), calcsize() pack(fmt, v1, v2, ...)     按照給定的格式(fmt),把數據封裝成字符串(實際上是類似于c結構體的字節流) unpack(fmt, string)       按照給定的格式(fmt)解析字節流string,返回解析出來的tuple calcsize(fmt)                 計算給定的格式(fmt)占用多少字節的內存 

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

注1.q和Q只在機器支持64位操作時有意思
注2.每個格式前可以有一個數字,表示個數
注3.s格式表示一定長度的字符串,4s表示長度為4的字符串,但是p表示的是pascal字符串

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 若尔盖县| 德化县| 象州县| 东莞市| 寻乌县| 本溪市| 柳江县| 洪雅县| 商南县| 隆子县| 罗平县| 远安县| 石楼县| 柞水县| 广水市| 昌黎县| 临城县| 湟源县| 霍山县| 开阳县| 云林县| 桂东县| 尉犁县| 凌海市| 读书| 舒城县| 宁国市| 荥阳市| 东源县| 南乐县| 右玉县| 高雄市| 綦江县| 明水县| 阿克陶县| 双流县| 洞口县| 乌兰浩特市| 松溪县| 洛隆县| 红原县|