python, unsigned, signed
import struct
# 将signed char转换为字节
struct.pack("b", -127)
# 将字节转换为signed char
struct.unpack("b", b"\x81")
# 将float转换为字节
struct.pack("l", 3.14159)
# 将字节转换为float
struct.unpack("f", b'\xd0\x0fI@')
若需要将读取的float值转换为float, 可以采用如下方法:
data = packet[0] << 24) | (packet[1] << 16) | (packet[2] << 8) | packet[3]
data_f = struct.unpack("f", struct.pack("I", data))