float()抱怨看起来有效的值

时间:2019-06-22 00:34:56

标签: python string python-2.7 input

我正在为电子表格对csv数据进行排序,并对不同行中的值求和。使用groupby之后,float()不起作用。

我尝试使用.strip()并将值打印到stdout,但它们对我来说都是有效的。

csv_rows是2D字符串列表

  # use to store data
  totals = {}

  # group rows by column name
  for key, group in groupby(csv_rows, lambda row: row[1]):

    # grab all the floats from another column
    values = [float(line[3]) for line in group]

    # do the deed
    total = sum(values)

    # record new data
    totals[key] = total

我尝试过:

  values = [] 
  for line in group:
      if not line[3].isdigit():
        print line[3]
      else:
        values.append(float(line[3]))

该脚本会打印一堆看起来有效的浮点数:

...
 0.378
 0.468
 0.232
...

ValueError: cannot convert string to float: OUT_RANGE失败 我希望所有输入都是有效的,可强制转换的字符串。

0 个答案:

没有答案