You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Python学生成绩录入程序如何给成绩添加对应科目名称?

实现方案

你可以将原存储的成绩列表调整为「科目-成绩映射字典」,适配不同学生选修科目数量不一致的需求,修改后的代码如下:

def GetStudentDataFromTeacher ():
    D ={}
    while True:
        StudentId = input ("输入学生ID:")
        # 调整输入提示,明确输入格式
        StudentMarks = input ("输入学生各科成绩,格式为「科目名:成绩」,多门科目用逗号分隔(例:语文:92,数学:87):")
        MoreStudents = input ('如果没有更多学生需要录入,请输入"no":')
        if StudentId in D:
            print (StudentId, "该学生ID已存在")
        else:
            # 二次拆分输入内容,生成科目-成绩字典
            score_dict = {}
            for item in StudentMarks.split(","):
                subject, mark = item.split(":")
                score_dict[subject.strip()] = mark.strip()
            D[StudentId] = score_dict
        if MoreStudents.lower() == "no":
            return D

使用说明

  • 录入时按照提示的格式输入即可自动关联科目与对应成绩
  • 后续读取学生数据时可直接遍历获取科目和成绩,示例如下:
# 调用函数获取数据
data = GetStudentDataFromTeacher()
# 遍历输出所有学生的科目成绩
for stu_id, score_info in data.items():
    print(f"学生ID:{stu_id}")
    for subject, score in score_info.items():
        print(f"- {subject}:{score}")

如果希望分开录入科目和成绩,也可以调整输入逻辑,先录入当前学生的选修科目数量,再逐个录入科目名称和对应成绩,逻辑和上述方案一致,只是拆分了输入步骤。

内容的提问来源于stack exchange,提问作者Or Zemer Tov

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.30 04:09:03