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

如何从字典列表中筛选指定studentId与date对应的assignmentId

筛选指定学生和日期的作业ID

需求说明

从包含作业信息的字典列表中,筛选出studentId等于8426且date为指定值的条目,并输出对应的assignmentId。

原代码问题

你之前的代码错误地直接遍历列表元素并尝试拆分为key, value,但列表中的每个元素是完整的字典,不能这样拆分。需要先遍历列表中的每个字典,再检查字典内的键值条件。

正确实现代码

# 假设作业列表数据存储在diary变量中
target_date = "Fri, 04/11/2022"
target_student_id = "8426"

for assignment in diary:
    # 检查当前作业的studentId和date是否匹配目标值
    if assignment.get("studentId") == target_student_id and assignment.get("date") == target_date:
        # 输出符合条件的assignmentId
        print(assignment["assignmentId"])

代码说明

  • 先定义目标学生ID和目标日期,方便后续修改维护
  • 遍历列表中的每个作业字典(assignment)
  • 使用get()方法获取键值,可避免因字典缺少对应键而抛出异常(也可直接用assignment["studentId"],但如果字典无该键会报错)
  • 当两个条件同时满足时,输出该字典对应的assignmentId

扩展优化

如果需要收集所有符合条件的assignmentId到列表中(而非直接打印),可以这样写:

target_date = "Fri, 04/11/2022"
target_student_id = "8426"
valid_assignment_ids = []

for assignment in diary:
    if assignment.get("studentId") == target_student_id and assignment.get("date") == target_date:
        valid_assignment_ids.append(assignment["assignmentId"])

print("符合条件的作业ID列表:", valid_assignment_ids)

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.13 13:15:15