首页 > 解决方案 > 查找 CSV 文件的总和

问题描述

编写一个名为“csv_sum”的函数,它接受一个字符串作为参数,表示一个 CSV 文件的名称,该文件有 5 列,格式为“,,,”,并从输入文件中返回第五列中所有值的总和

import csv
def csv_sum(st):
    val=0
    with open(st)as a:
        reader=csv.reader(a)
        for line in reader:
            for b in line:
                val=val+int(line[4])
    return val

我不完全了解如何使用 CSV 文件,所以我上面的内容是我尝试解决它。但我收到输入错误['animal.csv']

例子...

动物.csv

9,16,136,-24,3

3,13,170,-21,4

返回:35

预计:7

标签: pythonpython-3.6

解决方案


当您只需要第 5 列时,您不必要地遍历每一列。删除该for b in line语句,您的代码应该可以工作:

def csv_sum(st):
    val=0
    with open(st)as a:
        reader=csv.reader(a)
        for line in reader:
            val=val+int(line[4])
    return val

推荐阅读