关于python:将字符串转换为float

Converting string to float . Programming

本问题已经有最佳答案,请猛点这里访问。

我正试图读取一个包含大量值的文本文件。因此,首先我将所有值附加到我的列表中,我的任务是找到这些值的总和。

在附加的时候,我做一些类似的事情:lst.append(float(values))

我得到一个错误,因为在值列表中有像DNE这样的字母字符串。

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

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


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

一个简单的块:

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

应该足够了。


使用try/except并忽略当值无法转换为浮点值时引发的特定异常:

1
2
3
4
try:
    lst.append(float(values))
except ValueError as exc:
    pass