python-解析二进制数据

python-解析二进制数据

'''parse binary file.py'''
#peak intensity (photon), x (pixel), y (pixel), z (nm), 
#PSFSigmaX (pixel), PSFSigmaY (pixel), Total intensity (photon),background (photon), 
#SNR (peak to background e-), CRLBx (nm), CRLBy (nm), frame

import numpy as np
import struct

#输入参数
filename = '1_result2D11.txt'
dataPerLine = 12
bytePerData = 4

with open(filename,'rb') as f:              #读取文件
    data = []                               #存放文件数据
    dataline = []                           #临时存放行
    i = 0                                   #读取的数据
    while True:
        temp = f.read(bytePerData)          #读取bytePerData个字节
        if temp==b'':                       #文件终止
            break
        temp = struct.unpack('f',temp)[0]   #解析数据
        dataline.append(temp)
        
        if (i+1)%dataPerLine == 0:          #换行
            data.append(dataline)
            dataline = []
        i+=1
data = np.array(data)
np.save('QC-STORM output data',data)    #保存





 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值