Python:从十六进制解压缩为两倍
这是值
value = ['\x7f', '\x15', '\xb7', '\xdb', '5', '\x03', '\xc0', '@']
我尝试过
unpack('d', value)
但是他需要一个字符串才能打开包装。现在是清单。但是,当我将其更改为字符串时,长度将从8更改为58。但是双精度数需要使用长度8的值。]
Python:从十六进制解压缩为两倍,这是值= ['\ x7f','\ x15','\ xb7','\ xdb','5','\ x03','\ xc0', '@']我尝试了unpack('d',value),但是他需要一个字符串来进行解包。这是一个...
使用''.join
连接将列表转换为字符串:
请注意,有两种方法可以将其转换为双精度,这取决于cpu是否为bigendian或littleendian,因此最好明确说明您要的是哪种]]
>>> value = ['\x7f', '\x15', '\xb7', '\xdb', '5', '\x03', '\xc0', '@']
>>> ''.join(value)
'\x7f\x15\xb7\xdb5\x03\xc0@'
>>> from struct import unpack
>>> unpack('d', ''.join(value))
(8198.4207676749193,)
请注意,在实现之前,请使用以下函数转换值以转换HEX-> Double或Double-> HEX。