Python String Parsing Floats

时间:2014-10-07 21:03:29

标签: python python-2.7

如何将'14 / 15'字符串更改为浮点数? 我试图从文本文件中提取数据想要将'1/3'转换为浮点数。 float('1/3')不起作用。我想在'/'中分成两个部分,然后是1和3然后分开,但它似乎很狡猾。是否有更多的pythonic方式来做到这一点?我正在使用Python 2.7

2 个答案:

答案 0 :(得分:2)

如果您只需要评估简单的X/Y分数:

s = "14/15"
num, denom = map(float, s.split("/", 1))
print(num / denom)

如果您需要更完整的表达式评估程序,请查看asteval模块。

使用eval()也可能看起来是一种很简单的方法,但我建议security reasons反对它。

答案 1 :(得分:0)

如果您信任您的意见:

from __future__ import division

eval('14/15')