我有一個包含8000個粒子位置的二進制文件。 我知道每個粒子的值應該看起來像「-24.6151 ...」(我不知道我的程序給出了哪個精度值,我猜是雙精度(?)。我試着去閱讀這段代碼的文件:在不知道結構的情況下用python讀取二進制文件
In: with open('.//results0epsilon/energybinary/energy_00004.dat', 'br') as f:
buffer = f.read()
print ("Lenght of buffer is %d" % len(buffer))
for i in buffer:
print(int(i))
我得到的輸出:
Lenght of buffer is 64000
10
168
179
43
...
我會跳過值的整個列表,但你可以看到這些值都遠離我的期望。我想我有一些解碼錯誤。
我希望任何形式的幫助:)
我可以試試'struct'庫來解壓二進制文件 - https://docs.python.org/3/library/struct.html – pkisztelinski
cn的你使用['struct'](https://docs.python.org/3/library/struct.html)模塊來解壓(或打包)二進制數據。打印(數據) –