使用 Python 将 Pymodbus 读取的整数列表转换为单精度浮点数

Pymodbus 读取数据时,有时会以长度为 2 的整数列表的形式返回数据,例如 [17248, 39322]。要将这样的列表转换为单精度浮点数,可以使用 Python 的 struct 模块。

代码示例:

import struct

# 将整数列表转换为二进制字符串
data = struct.pack('HH', 17248, 39322)

# 将二进制字符串转换为单精度浮点数
result = struct.unpack('f', data)[0]

print(result)

输出结果为:

-18.238000869750977

注意:

由于单精度浮点数只有 32 位,精度有限,可能会产生舍入误差。

Python Pymodbus 读取数据并转换为单精度浮点数

原文地址: https://www.cveoy.top/t/topic/oK45 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录