我在Python3.6中遇到了一个数字格式问题。我的目标是将二进制数据从文件转换成可打印的十进制数。例如,我需要转换两个字节串形式的小端字节。。。在
b'\x12\00'
变成它的大端二进制形式。。。在
0000000000010010
最后是它的16-bit fixed-point Q15十进制数形式。。。在
(1/4096)+(1/16384)=0.00030517578(基本上,我们已经使上面的2个字节可读)
在我失败的尝试中解包结构函数似乎很有前途,但我的低级/数字表示经验目前还不太成熟。在
失败的尝试:
struct.unpack('<h', b'\x12\x00') # Yields (18,)
上面的代码得到的是“18”,如果字节表示一个整数,那就可以了,但是它们不是。在
如有任何帮助/建议,将不胜感激。谢谢您!在
由@jasonharper在问题评论中回答
我通过下面的代码实现了正确的值
相关问题 更多 >
编程相关推荐