2015-10-18 57 views
0

我試着這樣做:12字節數組雙蟒蛇

struct.unpack('d', barray[:HALF_BYTES])[0] 

barray[:HALF_BYTES]是一個12個字節數組

但我發現了這個錯誤:

Traceback (most recent call last): 
    File "random_input_sample_drawer.py", line 19, in <module> 
    print (struct.unpack('d', barray[:HALF_BYTES])[0]) 
struct.error: unpack requires a bytes object of length 8 

哪有我解決了它?

+0

你是什麼類型的野狗?它是一個bytearray()還是一個字符串?另外你想達到什麼,你想把這12個字節看作一個整數嗎? – tobspr

回答

0

你可以使用:

int.from_bytes(barray[:HALF_BYTES], byteorder='big', signed=False) 

那些12個字節轉換爲整數,如果多數民衆贊成你正在嘗試做的,假設你的barray爲ByteArray()和你使用Python 3.2 +

+0

但我輸了字節吧? phyton中沒有96位的整數,這就是爲什麼我試圖轉換爲浮點而不是整數。 –

+0

我相信,Python可以處理這個問題,並將其轉換爲內部很長的時間。編輯:剛剛測試過,沒有丟失精度 – tobspr

+0

太棒了。我會用這個。 –