我們已經(jīng)知道,存儲(chǔ)在計(jì)算機(jī)內(nèi)存中的數(shù)據(jù)取決于 CPU 使用的架構(gòu)。 它可以是小端(最小有效位存儲(chǔ)在最小地址中)或大端(最小有效字節(jié)存儲(chǔ)在最大地址中)。
numpy.ndarray.byteswap()
numpy.ndarray.byteswap()
函數(shù)在兩個(gè)表示:大端和小端之間切換。
import numpy as np
a = np.array([1, 256, 8755], dtype = np.int16)
print '我們的數(shù)組是:'
print a
print '以十六進(jìn)制表示內(nèi)存中的數(shù)據(jù):'
print map(hex,a)
# byteswap() 函數(shù)通過(guò)傳入 true 來(lái)原地交換
print '調(diào)用 byteswap() 函數(shù):'
print a.byteswap(True)
print '十六進(jìn)制形式:'
print map(hex,a)
# 我們可以看到字節(jié)已經(jīng)交換了
輸出如下:
我們的數(shù)組是:
[1 256 8755]
以十六進(jìn)制表示內(nèi)存中的數(shù)據(jù):
['0x1', '0x100', '0x2233']
調(diào)用 byteswap() 函數(shù):
[256 1 13090]
十六進(jìn)制形式:
['0x100', '0x1', '0x3322']