我有一個影像資料,主要看起來像:
array('B', [255,216,255...])
它是型別 array.array('B')
由于此資料將通過通信通道發送,因此必須將此資料轉換為型別:bytearray。
我將資料轉換為位元組陣列:
data1 = bytearray(CompressedImage.data)
但是,我現在需要獲取array.array('B')資料的原始形式。
到目前為止,我發現byte()并decode()運行,但我仍然無法對原始資料形式進行反序列化。

uj5u.com熱心網友回復:
不需要編碼/解碼,因為我們在這里處理原始位元組。
您可以將位元組陣列直接傳遞給陣列初始值設定項。您仍然需要在初始化程式中指定型別代碼,因為原始位元組本身無法告訴您。“B”表示 1 位元組無符號整數,即 8 位顏色深度。
>>> from array import array
>>> a = array("B", [255, 216, 255])
>>> data1 = bytearray(a)
>>> a1 = array("B", data1)
>>> a1 == a
True
如果您有要填充的現有陣列實體,則可以使用 frombytes
>>> a2 = array("B")
>>> a2.frombytes(data1)
>>> a == a1 == a2
True
轉載請註明出處,本文鏈接:https://www.uj5u.com/qiye/340128.html
