使用python将bytearray转换为float

时间:2016-05-25 22:15:35

标签: python bit-manipulation bytearray

我正在使用python 2.7。只是想知道如何将bytearray转换为2字节的浮点数。 bytearray是:

simple test

想要以little-endian格式转换为96个浮点数,字节1是LSB,字节0是MSB。

1 个答案:

答案 0 :(得分:2)

您可以使用numpy fromstring

import numpy as np

# little-endian
x = np.fromstring(buffer(temp), dtype='<f2')

# big-endian
x = np.fromstring(buffer(temp), dtype='>f2')

如果您需要正常浮动,可以将np.float16转换为浮点数:

# one value
float(x[0])

# all values
[float(a) for a in x]

# see user2357112 comments for other options