美文网首页
python读写二进制文件bin

python读写二进制文件bin

作者: 此方病 | 来源:发表于2019-07-08 15:36 被阅读0次

请问如何能够使用python3读取二进制的.bin文件
Python中的pack和unpack的使用

参考上述文章可知,可以使用struct进行读取,即pack和unpack。

import struct

打包变长字符串

对于变长字符在处理的时候可以把字符的长度当成数据的内容一起打包。

data = struct.pack("I%ds" % (len(s),), len(s), s)

上面代码把字符 s 的长度打包成内容,可以在进行内容读取的时候直接读取。

解包变长字符串

(i,), data = struct.unpack("I", data[:int_size]), data[int_size:]

解包变长字符时首先解包内容的长度,在根据内容的长度解包数据

在我的代码里,

np.array(struct.unpack(‘%df’ % (h * w), f.read(4 * h * w)), float)

这个%df,是拆分成%d和f,%d对应数量(h*w),比如100个就是100f,f就是float。

相关文章

网友评论

      本文标题:python读写二进制文件bin

      本文链接:https://www.haomeiwen.com/subject/jstahctx.html