宝宝们来看看我的问题

img


看看吧,大一财经类女大学生,真的学不懂啊,快截止的实验报告,看看吧看看吧

第一题

def sum_series(n):
    # 定义内部函数,用于计算每一项的值
    def series_i(i):
        return sum(range(1, i+1))

    # 使用 map() 函数依次计算每一项的值,并返回其和
    return sum(map(series_i, range(1, n+1)))

# 调用函数,计算1+(1+2)+(1+2+3)+...(1+2+3+...n)
print(sum_series(5))

第二题

filename = "yzy.txt"

try:
    with open(filename, "r", encoding="utf-8") as f:
        # 读取文件内容
        content = f.read()
        print(content)
except FileNotFoundError:
    print("文件不存在")

第三题

import csv

filename = "score.csv"

# 定义列索引
id_col = 0
prog_col = 1
sports_col = 2
econ_col = 3

try:
    with open(filename, "r") as f:
        # 创建CSV读取器
        reader = csv.reader(f)

        # 跳过CSV文件的标题行
        next(reader)

        # 初始化各列的变量
        prog_scores = []
        sports_scores = []
        econ_scores = []

        # 依次读取每一行,统计各列的平均分、最高分、最低分
        for row in reader:
            # 统计程序设计成绩
            prog_scores.append(int(row[prog_col]))
            # 统计体育成绩
            sports_scores.append(int(row[sports_col]))
            # 统计经济学成绩
            econ_scores.append(int(row[econ_col]))

        # 计算平均分
        prog_avg = sum(prog_scores) / len(prog_scores)
        sports_avg = sum(sports_scores) / len(sports_scores)
        econ_avg = sum(econ_scores) / len(econ_scores)

        # 计算最高分、最低分
        prog_max = max(prog_scores)
        sports_max = max(sports_scores)
        econ_max = max(econ_scores)
        prog_min = min(prog_scores)
        sports_min = min(sports_scores)
        econ_min = min(econ_scores)

        # 输出结果
        print("程序设计平均分:%d,最高分:%d,最低分:%d" % (prog_avg, prog_max, prog_min))
        print("体育平均分:%d,最高分:%d,最低分:%d" % (sports_avg, sports_max, sports_min))
        print("经济学平均分:%d,最高分:%d,最低分:%d" % (econ_avg, econ_max, econ_min))
except FileNotFoundError:
    print("文件不存在")