Python将字符串转换为float

时间:2015-03-23 20:13:42

标签: python string

我有一个看起来像这样的字符串:

a = "'92.345'\r\n\r\n"
a.strip()

当我尝试使用np.float(a)float(a)将其转换为浮动时,我得到了

*** Value error: could not convert string to float: '92.345'

如何将其干净地转换为浮动?

4 个答案:

答案 0 :(得分:5)

你需要strip你的字符串删除空格和一个引用'

>>> float(a.strip().strip("'"))
92.345

或者@Martijn Pieters在评论中说,您可以使用a.strip("\r\n\t '")将此减少为一次调用。

答案 1 :(得分:2)

您还可以使用str.translate

print(float(a.translate(None,"\r\n'")))

答案 2 :(得分:0)

尝试切割字符串以仅提取其数字部分:

a = "'92.345'\r\n\r\n"
x = float(a[1:6])

答案 3 :(得分:0)

删除除数字和点之外的所有内容

>>> a = "'92.345123'\r\n\r\n"
>>> float(re.sub(r'[^0-9\.]', '', a))
92.345123