将字符串转换为float。程序设计

时间:2015-10-30 01:06:56

标签: python string list

我正在尝试阅读包含大量值的文本文件。首先,我将所有值附加到列表中,我的任务是找到这些值的总和。

在追加时我做了类似的事情:lst.append(float(values))

我收到错误,因为值列表中有DNE等字母字符串。

所以,如果value == 'DNE'我如何忽略它,让程序只关注浮点值并添加它。

要添加,我知道sum(lst),只是想知道如何忽略'DNE'

2 个答案:

答案 0 :(得分:2)

尝试将字符串转换为数字值时,您将获得ValueError异常,因为这是不允许的。 您需要将append()调用包装在try-except块中以捕获这些错误并以适当的方式处理它们:

一个简单的块:

try:
    lst.append(float(value))
except ValueError:
    print "Cannot convert String to Float!"

应该足够了。

答案 1 :(得分:0)

使用try/except并忽略在无法将值转换为float时引发的特定异常:

try:
    lst.append(float(values))
except ValueError as exc:
    pass