python读取二进制文件中的浮点数数组
读取文件
假设文件的完整路径为file_path,二进制文件采用'rb'模式打开
f = open(file_path,'rb')
如果文件路径含中文,需要将文件路径字符串的编码转换为'utf8'
file_path = unicode('d:\数据.bin','utf8')
读取浮点数组
打开二进制文件后,将数据读取到字符串d_str
d_str = f.read()
然后关闭文件
f.cloae()
获取字符串长度
d_len = len(d_str)
对于float类型,一般占用4字节,因此数组长度应为d_len/4
然后使用struct将d_str转换为浮点数tuple数组
import struct
data = struct.unpack(str(d_len/4)+'f',d_str)
有时还需考虑字节顺序,如为big-endian,则以上语句改为
data = struct.unpack('>'+str(d_len/4)+'f',d_str)