试题模板生成器
qpt-generator的Python项目详细描述
qpt_发生器
一种用C++编写的试题模板生成算法,提供了高性能。它在内部使用Cython来创建python包。在
简介
通过题库生成试题是学习管理系统和教育机构的一项重要活动。问题纸的质量取决于各种设计约束条件,例如一份问题纸是否按照布鲁姆的分类法评估不同的问题解决技能,它是否涵盖了课程大纲中的所有单元,以及它是否涵盖了各种难度级别。在
我已经实现了Vaibhav M. Kale和Arvind W. Kiwelekar编写的C++中的问题纸模板生成算法,以提供快速的性能。这个实现是可扩展的,它支持创建问题纸模板。在
qptu生成器包是出于我的学术项目Question Paper Generator的需要而设计的。在
安装
您可以使用easy_install使用以下命令安装qpt_generator:
pip install qpt-generator
或者
^{pr2}$使用
安装模块后,可以使用以下命令导入:
fromqpt_generatorimportQPTGenerator
必须向QPTGenerator的构造函数提供两个输入:
- 限制和标记分布列表的词典 例如:如果要生成具有4个约束的纸张:
- 分数的单位分布
- 难度等级分布
- 认知水平分数分布
- 按问题分配分数
- 与问号分布列表相关联的问题编号列表。同一题号的重复表示该题的子题。在
当您调用QPTGenerator类的generate方法时,将生成输出。在这里,输出是一个字典,列出了分配的单元、认知水平、难度和按问题编号打分
fromqpt_generatorimportQPTGeneratormark_distributions={"question":[5,5,10,4,6,5,5],"unit":[8,8,8,5,11],"difficulty":[13,15,12],"cognitive":[12,18,10],}question_no=[1,1,2,3,3,4,4]qpt=QPTGenerator(mark_distributions,question_no)output=qpt.generate()# output = {'cognitive': [2, 3, 2, 3, 3, 1, 3, 1, 1, 2],# 'difficulty': [3, 1, 2, 2, 1, 3, 3, 1, 2, 3],# 'question': [5, 5, 8, 2, 2, 1, 1, 6, 5, 5],# 'question_no': [1, 1, 2, 2, 3, 3, 3, 3, 4, 4],# 'unit': [4, 5, 1, 3, 2, 2, 3, 5, 2, 3]}
要满足所有给定的约束: 问题1应包含2个子问题:
- 第一道题的认知水平应为2级,难度为3级,单元号为4,分数为5
- 第二道题的认知水平=3,难度=1,单元号=5,分数=5
你可以从你的题库数据库中随机选择这类问题。在
参考文献
- 项目
标签: