python-3.x 将字节串转换为双精度

m0rkklqb  于 2023-08-08  发布在  Python
关注(0)|答案(1)|浏览(117)

我在主机上使用带有Arduino Shield和Python3的CAN接口。我通过Arduino的串行接口得到以下消息:
第一个月
8字节数据是双精度1.9278159141540527。对于转换,我使用以下python代码:
struct.unpack('>d', b'\x3F\xFE\xD8\x55\x80\x00\x00\x00')[0]
我的问题是,我不知道如何转换消息字符串的8个字节。我不知道该怎么办3F FE D8 55 80 00 00 00到此b'\x3F\xFE\xD8\x55\x80\x00\x00\x00'
我试图在消息中列出8字节的数据,但我有一个字符串列表,不知道如何处理它。
先谢了

bqucvtff

bqucvtff1#

您可以从输入字符串创建bytearray

import struct
s = "3F FE D8 55 80 00 00 00"
ba = bytearray.fromhex(s)
r = struct.unpack('>d', ba)[0]

字符串
输出量:

1.9278159141540527

相关问题