【问题标题】:Converting string to float . Programming [duplicate]将字符串转换为浮点数。编程[重复]
【发布时间】:2016-01-30 08:50:57
【问题描述】:

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

在附加时,我会执行以下操作:lst.append(float(values))

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

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

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

【问题讨论】:

    标签: python string list


    【解决方案1】:

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

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

    【讨论】:

      【解决方案2】:

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

      一个简单的块:

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

      应该够了。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2013-10-06
        • 2011-11-25
        • 1970-01-01
        • 2017-05-09
        • 1970-01-01
        • 1970-01-01
        • 2019-11-21
        • 2012-11-15
        相关资源
        最近更新 更多