我想要第 6 列值的总和
I want to the sum of the 6th column vlaues
代码:
import csv
cr = csv.reader(open("filename"))
next(cr)
print (sum(float(x[6]) for x in cr))
但是出现错误IndexError: list index out of range
第 6 列的索引为 5 而不是 6,因此更改:
print (sum(float(x[6]) for x in cr))
至:
print (sum(float(x[5]) for x in cr))
但是,如果您在更改后仍然得到 IndexError
,则可能是您的 CSV 中的某些行没有第 6 列,在这种情况下,您可以在生成器表达式中添加一个条件跳过没有 6 列的行:
print (sum(float(x[5]) for x in cr if len(x) >= 6))
代码:
import csv
cr = csv.reader(open("filename"))
next(cr)
print (sum(float(x[6]) for x in cr))
但是出现错误IndexError: list index out of range
第 6 列的索引为 5 而不是 6,因此更改:
print (sum(float(x[6]) for x in cr))
至:
print (sum(float(x[5]) for x in cr))
但是,如果您在更改后仍然得到 IndexError
,则可能是您的 CSV 中的某些行没有第 6 列,在这种情况下,您可以在生成器表达式中添加一个条件跳过没有 6 列的行:
print (sum(float(x[5]) for x in cr if len(x) >= 6))