ValueError:无法将字符串转换为浮点数:(115.985)

时间:2019-09-12 00:07:39

标签: python string scale

enter image description here我正在从秤上接收数据。当我从该比例尺接收数据时,格式如下:b' 1G 15.985lb \r\n'所以我只想保留我的115.985。 b'1G 15.985lb \ r \ n'不是硬编码的,它是由我的标尺返回的字节,这就是为什么我需要解码(如果您尝试使用G,则为115.985,因为G之前为1,但这是另一个问题稍后,我只是想将我的115.985放入一个浮点数)当我从标度中接收数据时,它是以字节为单位的,所以我使用serialString.decode('utf-8')将其转换为字符串,这样我只能用:{{ 1}}

但是我需要这个数字浮动,以便可以在库存中使用它来做一些数学运算。所以我尝试使用:finalweight = re.sub('[^\d\.]', '', serialString_decode),但我不断收到此错误:`ValueError:无法将字符串转换为浮点数':

我的字符串没有任何','或空格。尝试很多事情,但是找不到我的代码出了什么问题。

finalweight = float(finalweight)

有一个浮点数,以便我可以进行数学运算

1 个答案:

答案 0 :(得分:1)

它在python2.7 macOS Mojave中打印115.985。您的代码无法在python3中作为AttributeError: 'str' object has no attribute 'decode'在python3中使用。

enter image description here

这是您的python3解决方案

enter image description here