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

Python中如何用推导式将字典列表转换为Question类实例存入题库?

问题解答

首先明确:完全可以使用列表推导式实现同等效果,代码会更简洁易读。

现有代码注意事项

你当前的for循环代码存在字段不匹配的bug:data列表中每个字典的题目字段键为question,但循环中取值用的是value["text"],运行会触发KeyError,需要先统一字段对应关系。

列表推导式实现代码

修正字段匹配后,直接用列表推导式生成question_bank即可,逻辑完全等价于你原有循环+append的写法:

# 修正key匹配后的列表推导式写法
question_bank = [Question(value["question"], value["answer"]) for value in data]

可选鲁棒性优化

如果不能保证data中每个字典都完整包含question和answer两个键,可以在推导式中增加条件过滤,避免运行报错:

question_bank = [
    Question(item["question"], item["answer"]) 
    for item in data 
    if "question" in item and "answer" in item
]

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.02 15:54:03