所以我是python的新手,我很难理解这段代码。我正在尝试使用名为“ exam_grades.csv”的“ CSV文件”,然后编写一个函数,该函数读取文件中的所有值,但使用字符串类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()
有什么建议吗? 谢谢!
答案 0 :(得分:0)
大多数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()
这假设您有多条分数线,每条分数线。
我们在这里跟踪两个变量,即所有成绩的总和以及我们添加到列表中的所有成绩的数量(我们还将转换为整数,因为您将要读取字符串)
将所有成绩加起来并除以成绩数,便得出平均值。
希望这会有所帮助。