如何将独立字节转换为字节数组?

问题描述 投票:0回答:2

我通过串行接收单个字节,我知道它们中的每 4 个都是浮点数。 F.e.我收到

b'\x3c'
b'\xff'
,我希望它是
b'\x3c\xff'
。 最好的转换方法是什么?

python arrays python-3.x type-conversion byte
2个回答
1
投票

您可以像使用字符串一样使用 join()

byte_1 = b'\x3c'
byte_2 = b'\xff'

joined_bytes = b''.join([byte_1, byte_2]) #b'\x3c\xff'

您可以在 struct 模块中使用它来获取解码后的浮点数,请注意它会返回一个元组,即使它内部只有一个元素。

import struct

byte_1 = b'\x3c'
byte_2 = b'\xff'
byte_3 = b'\x20'
byte_4 = b'\xff'

joined_bytes = b''.join([byte_1, byte_2, byte_3, byte_4])

result = struct.unpack('f', joined_bytes)
print(result[0])

0
投票

如果您只有一个字节要转换,则此方法不起作用

© www.soinside.com 2019 - 2024. All rights reserved.