python读取二进制文件
其实在我发布的前两个博客中已经包含了python读取二进制的方法,但是我还是觉得有必要将该方法单独拿出来,发布一下。因为,当初刚接触这方面的知识时,第一关(读取二进制文件)就难以跨过。
其实就是用到了两个包:struct和numpy
想要知道数据是否读取正确,可以可视化或者是调试
import numpy as np
import struct
def xshow(filename, nx, nz):
f = open(filename, 'rb')
pic = np.zeros((nx, nz))
for i in range(nx):
for j in range(nz):
data = f.read(4)
elem = struct.unpack("f", data)[0]
pic[i][j] = elem
f.close()
return pic
if __name__ == '__main__':
data_path = r''
col = 1200
lines = 1200
data = xshow(data_path, nx=col, nz=lines)
plt.imshow(data)
plt.show()