从“CSV”fi平均所有分数的问题

2024-04-26 14:26:20 发布

您现在位置:Python中文网/ 问答频道 /正文

所以我是python新手,我很难理解这段代码。我正在尝试使用“CSV文件”称为考试_成绩.csv然后编写一个函数,读入文件中的所有值,但使用string class split()方法将这个长字符串拆分为字符串列表。每个字符串代表一个等级。那么我的函数应该返回所有等级的平均值。你知道吗

到目前为止,这是我有的;我可以打开.csv文件很好,但我有麻烦平均所有的成绩。我有一些评论,因为我知道从我一直在做的事情到哪里去:(

def fileSearch():
    'Problem 4'
    readfile = open('exam_grades.csv', "r")
    for line in readfile:
        l = line.split(str(","))
        #num_grades = len(l)
        #averageAllGrades = l * 500 
        #return num_grades
        print(l)
fileSearch()

有什么建议吗? 谢谢!你知道吗


Tags: 文件csv函数字符串代码stringlinenum
1条回答
网友
1楼 · 发布于 2024-04-26 14:26:20

大多数CSV文件的顶部都有一个头文件,您可能想跳过它,但为了简单起见,我们可以忽略它。你知道吗

下面是一些有效的代码:

def fileSearch():
    'Problem 4'
    readfile = open('exam_grades.csv', "r")
    grade_sum = 0
    grade_count = 0
    for line in readfile:
        l = line.split(str(","))
        for grade in l:
            grade_sum += int(grade)
            grade_count += 1
    print(grade_sum/grade_count)

fileSearch()

这假设您有多个带等级的行,并且每行有多个等级。你知道吗

我们在这里跟踪两个变量,所有等级的总和和我们添加到列表中的所有等级的数量(我们还将转换为整数,因为您将要读取字符串)。你知道吗

当你把所有的分数加起来,除以分数,你得到一个平均数。你知道吗

希望这有帮助。你知道吗

相关问题 更多 >