NumPy位元組交換


NumPy - 位元組交換

我們已經知道,儲存在計算機記憶體中的資料取決於 CPU 使用的架構。 它可以是小端(最小有效位儲存在最小地址中)或大端(最小有效位元組儲存在最大地址中)。

numpy.ndarray.byteswap()

numpy.ndarray.byteswap()函式在兩個表示:大端和小端之間切換。

import numpy as np 
a = np.array([1,  256,  8755], dtype = np.int16)  
print  '我們的陣列是:'  
print a 
print  '以十六進位制表示記憶體中的資料:'  
print map(hex,a)  
# byteswap() 函式通過傳入 true 來原地交換 
print  '呼叫 byteswap() 函式:'  
print a.byteswap(True)  
print  '十六進位制形式:'  
print map(hex,a)  
# 我們可以看到位元組已經交換了

輸出如下:

我們的陣列是:
[1 256 8755]

以十六進位制表示記憶體中的資料:
['0x1', '0x100', '0x2233']

呼叫 byteswap() 函式:
[256 1 13090]

十六進位制形式:
['0x100', '0x1', '0x3322']