8
A
回答
11
結構模塊沒有3字節整數的選項,所以我認爲追加'\ x00'的想法是最簡單的方法。
In [30]: import struct
In [38]: struct.pack('>3b',0,0,1)
Out[38]: '\x00\x00\x01'
In [39]: struct.unpack('>i','\x00'+'\x00\x00\x01')
Out[39]: (1,)
+1
+ 1爲結構... – chespinoza 2013-05-28 19:28:40
4
我覺得從3.2 int
開發出一種新方法.from_bytes
,所以你可以使用以下代替struct.unpack
:
int.from_bytes(b'\x00\x00\x01', 'big')
# 1
僅供參考,請參閱:http://docs.python.org/dev/library/stdtypes.html#int.from_bytes
2
的蟒蛇2和沒有struct
模塊的替代方案將是:
>>> s = '\x61\x62\xff'
>>> a = sum([ord(b) * 2**(8*n) for (b, n) in zip(s, range(len(s))[::-1])])
>>> print a
6382335
其中字節排序是big-endian。這給了相同的結果與 unutbu答案:
>>> print struct.unpack('>I', '\x00' + s)[0]
6382335
對於小端字節順序轉換將是:
>>> a = sum([ord(b) * 2**(8*n) for (b, n) in zip(s, range(len(s)))])
>>> print a
16736865
>>> print struct.unpack('<I', s + '\x00')[0]
16736865
相關問題
- 1. 如何讀取字節數組中的前3個字節
- 2. 如何以字符串形式讀取字節
- 3. 從字節數組讀取3位
- 4. 無法讀取整個標題; 0字節讀取;預期512個字節
- 5. XmlReader - 以字符串形式讀取當前節點
- 6. 獲取int的字節表示形式,僅使用3個字節
- 7. 如何以整數形式讀取文件中的每7位?
- 8. 以整數形式讀取系統時間?
- 9. 以空XML元素的整數形式讀取內容
- 10. 將3個字節提取到數字
- 11. C++如何讀取字節爲整數字節序獨立?
- 12. 使用python讀取xxx,yyy,zzz形式的整數字符串
- 13. 如何在informix數據庫中讀取以字節形式存儲的圖像?
- 14. 如何使用Perl以字節數組的形式讀取圖像?
- 15. 以字節數組的形式從JPEG獲取元數據
- 16. Firebase數據庫以字節數組的形式獲取價值
- 17. Apache POI - 以整數形式獲取數字
- 18. 整個DataTable對象以字節形式保存在數據庫中
- 19. 如何從一個字節讀取整數[]
- 20. 每個字節讀取陣列字節
- 21. 從波形文件python讀取字節
- 22. 字節數組以XML形式返回,提取?
- 23. 以整數形式defaultdict
- 24. 如何以字符的形式讀取實數
- 25. 從一個字節讀取EXIF數據[]
- 26. 讀取下一個字節的位數
- 27. 從RandomAccessFile中讀取x個字節數
- 28. 讀取字節數組多個文件
- 29. java:FileInputStream.read()讀取一個字節,但可以讀取一個字符,怎麼來的?
- 30. 獲取一個整數給定其4字節無符號整數小尾數形式? (C++)
確保您添加到NUL右端... – 2012-04-18 19:44:11