A way that is much faster is:
import pandas as pd df = pd.read_csv("grades.csv") grades = df.iloc[:, 1:] names = df.iloc[:, 0] averages = grades.mean(axis=1) output = pd.DataFrame(names, averages) output.to_csv("Final_grades.csv", index=False)