我有套接字在java和python之间以字符串格式发送数据。 python客户端在字符串中接收浮点数,例如data_in = "[F@5cf0ac6e"
,然后尝试将它们转换为value = int(float(data_in[1:]))
的整数。但是python返回错误ValueError: could not convert string to float: F@5cf0ac6e
。如何在Python中将java float值赋予整数?谢谢!
答案 0 :(得分:0)
如果data_in
的前三个字符与十六进制数字字符串无关,则切片应为data_in[3:]
。这将忽略[F@
个字符,只需转换5cf0ac6e
。
但是,无需拨打float()
。相反,使用:
value = int(data_in[3:], 16)
因为转换为整数,任何浮点信息都会丢失。 16
int()
参数是必需的,因为您从基数16(十六进制)转换。