我想用Python读取二进制文件。到目前为止,我已经使用了numpy.fromfile
,但还不能确定结果数组的结构。我有一个IDL函数可以读取文件,所以这是我唯一要做的事情。我对IDL一无所知。在
以下IDL函数将读取文件并返回lc、zgrid、fnu、efnu等:
openr,lun,'file.dat',/swap_if_big_endian,/get_lun
s = lonarr(4) & readu,lun,s
NFILT=s[0] & NTEMP = s[1] & NZ = s[2] & NOBJ = s[3]
tempfilt = dblarr(NFILT,NTEMP,NZ)
lc = dblarr(NFILT) ; central wavelengths
zgrid = dblarr(NZ)
fnu = dblarr(NFILT,NOBJ)
efnu = dblarr(NFILT,NOBJ)
readu,lun,tempfilt,lc,zgrid,fnu,efnu
close,/all
但我不确定如何在Python中复制它。感谢任何帮助。谢谢。在
我不是在找翻译。我在找一个跳板,我可以试着解决这个问题。在
为了读取一个二进制文件(假设这是32位或者用户已经知道的东西),我将首先创建一个方法
也就是说,我们的方法必须从我们自己制作的东西中转换出来,比如:
^{pr2}$下一步是创建一个合并
binaryToAscii
的方法,这样我们要么连接一些字符串,要么连接writing to a new file。这应该由用户决定。在另外,如果不是以字符串形式检索二进制文件,那么there our built in methods that turn unicode characters into ascii values by taking in there unicode value (binary included)。在
关于文件的读取,可以使用the same link for reading and writing to a file。在
相关问题 更多 >
编程相关推荐