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

Python如何实现自定义函数校验指定学生对应科目是否通过考核

Python 学生科目通过检查函数实现

前提说明

你提供的原始students字典存在语法问题,成绩F、C、B等没有加字符串引号,运行会报变量未定义错误,修正后结构如下:

students = {
    'Peter': ['Economy', {'PRO100': 'B', 'PRO110': 'C', 'DAT130': 'F'}, 
    'James': ['Psychology', {'MAT120': 'C', 'PRO100': 'B', 'DAT120': 'A'}]
}

for循环版本实现逻辑

  • 第一步:遍历students字典的所有键值对,匹配传入的学生姓名
  • 第二步:匹配到对应学生后,遍历该学生的成绩子字典,匹配传入的科目编号
  • 第三步:匹配到对应科目后,判断成绩是否不等于'F',返回对应布尔值
  • 未匹配到学生/对应科目时默认返回False

完整代码实现

def check(student, subject):
    # 遍历外层学生字典
    for stu_name, stu_info in students.items():
        if stu_name == student:
            # 提取学生信息列表的第二个元素是成绩字典
            score_dict = stu_info[1]
            # 遍历成绩字典匹配科目
            for sub_id, score in score_dict.items():
                if sub_id == subject:
                    return score != 'F'
    # 未找到对应学生或科目时返回False
    return False

调用测试效果

check('Peter', 'PRO100')
# 输出:True
check('Peter', 'DAT130')
# 输出:False

内容的提问来源于stack exchange,提问作者Jacob

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.24 08:24:00