Python中的struct模块简单介绍

struct模块能够构造并解析打包的二进制数据。 从某种意义来说,它是一个数据转换工具,它能够把文件中的字符串解读为二进制数据。 简单用法如下:

  • 用struct来打包

>>> import struct
>>> F = open("data.bin", "wb")                  # 打开文件供写
>>> data = struct.pack(">i4sh", 7, 'spam', 8)   # 使用>i4sh格式,打包数据
>>> data                                      
'\x00\x00\x00\x07spam\x00\x08'
>>> F.write(data)                               # 写byte字符数据
>>> F.close()
  • 用struct来解包

>>> import os
>>> F = open("data.bin", "rb")                  # 打开二进制文件,方式"rb"
>>> data = F.read()                             # 读取二进制文件的内容
>>> data
'\x00\x00\x00\x07spam\x00\x08'
>>> values = struct.unpack(">i4sh", data)       # 使用'>4ish'格式来解包
>>> values                                      # 实际的值
(7, 'spam', 8)
>>>

备注:

这里的格式化字符串是指一个4字节整数,一个包含4个字符的字符串以及一个2位整数的数据包

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值