如何在Python中将十六进制数转换为浮点
如何将十六进制数转换为浮点数 我在C中使用这个如何在Python中将十六进制数转换为浮点,python,python-3.x,arduino,modbus,Python,Python 3.x,Arduino,Modbus,如何将十六进制数转换为浮点数 我在C中使用这个 HexTofloat float (uint32_t x){ return (* (float *) & x); } i = HexTofloat (1130839281); print (i); //result 231.24 它是如何工作的?我想在python中实现它您必须使用float.fromhex和float.hex float.fromhex('0x1.5c28f5c28f5c3p-1') Output: 0.68 您
HexTofloat float (uint32_t x){
return (* (float *) & x);
}
i = HexTofloat (1130839281);
print (i); //result 231.24
它是如何工作的?我想在python中实现它您必须使用
float.fromhex
和float.hex
float.fromhex('0x1.5c28f5c28f5c3p-1')
Output: 0.68
您可以像这样使用python的内置函数:
float.hex(num)
您可以使用一个名为ast
要安装此库,您需要键入:-
pip install AST
例如:-
您将获得输出:-
43797
这是否回答了您的问题:我通过输入值“1130839281”进行了尝试,但结果不是231.24。我通过输入值“1130839281”进行了尝试,但结果不是231.24浮点。fromhex('1130839281')输出:73828373121.0
from ast import literal_eval
data = "0xAB15"
out = literal_eval(data)
print(out)