python编程问题,改代码≥﹏≤

以下代码错误多吗,分别在哪里,怎样修改,可以扫一个完整代码吗?

img

img

import csv

# 把 'a' 改成 'w' 会好一点
with open('./score.csv', 'w', newline='', encoding='utf-8') as scorecsv:  # 因为有中文,所以把 encoding 设置为 utf-8,后面的也是
    writer = csv.writer(scorecsv)
    writer.writerow(['考号', '程序', '设计', '体育', '经济学'])
    writer.writerows([
        ['101', '72', '96', '88'],
        ['102', '68', '88', '73'],
        ['103', '63', '63', '66'],
        ['104', '95', '64', '65'],
        ['105', '89', '88', '57'],
        ['106', '77', '87', '77'],
        ['107', '67', '64', '97'],
        ['108', '44', '99', '64'],
        ['109', '82', '73', '75'],
        ['110', '79', '78', '85']
    ])

with open('./score.csv', 'r', encoding='utf-8') as scorecsv:
    reader = csv.reader(scorecsv)
    for row in reader:
        print(row)

sum1 = sum2 = sum3 = 0
max1 = max2 = max3 = 0
min1 = min2 = min3 = 0

with open('./score.csv', 'r', encoding='utf-8') as scorecsv:
    reader = csv.reader(scorecsv)
    for i in reader:
        if i[0] != '考号':
            sum1 += int(i[1])
            sum2 += int(i[2])
            sum3 += int(i[3])

# 简化求最小值和最大值的代码
with open('./score.csv', 'r', encoding='utf-8') as scorecsv:
    reader = csv.reader(scorecsv)
    rows = list(reader)[1:]
    rows1 = [row[1] for row in rows]
    rows2 = [row[2] for row in rows]
    rows3 = [row[3] for row in rows]
    max1 = max(rows1)
    max2 = max(rows2)
    max3 = max(rows3)
    min1 = min(rows1)
    min2 = min(rows2)
    min3 = min(rows3)

print('程序设计课程的平均分为:{},最高分为:{},最低分为:{}'.format(sum1 // 10, max1, min1))
print('体育课程的平均分为:{},最高分为:{},最低分为:{}'.format(sum2 // 10, max2, min2))
print('经济学课程的平均分为:{},最高分为:{},最低分为:{}'.format(sum3 // 10, max3, min3))