在jupyter笔记本中实现自动评估练习的小型框架
nbautoeval的Python项目详细描述
#nbautoeval
nbautoeval是一个非常轻量级的python框架,用于在jupyter(python)笔记本中创建auto-evaluated练习。
给学生一篇描述期望的课文,请他们写 他们自己的代码,然后可以在教师定义的数据样本上看到结果, 与通过教师提供的解决方案获得的结果进行比较, 视觉反馈。
此时,由于缺乏有关open/edx的知识/文档(请阅读: 在fun中运行的版本),没有可用的代码将结果导出为 等级或任何类似的东西(因此被称为自动评价)。
法典中确实有规定要对所有 试图纠正,试图向教师提供反馈。
#在我的活页夹上试试
点击下面的徽章,查看mybinder.org下的几个示例演示-仅此而已 在演示笔记本中。
[![活页夹](http://mybinder.org/badge.svg)](http://mybinder.org/repo/parmentelat/nbautoeval)
#历史记录
它最初嵌入到一个[mooc on python2](https://github.com/parmentelat/flotpython) 这是第一次在[法国娱乐平台](https://www.france-universite-numerique-mooc.fr/) 2014年秋天。然后复制成一个 生物信息学](https://github.com/parmentelat/flotbioinfo)2016年春季 首次命名为nbautoeval,但仍嵌入 更大的git模块。
目前的git回购协议是在2016年6月在此基础上创建的,目的是 作为这两个回购协议的git子树,可能还有其他一些 事实证明人们对此很感兴趣。
#要求
目标当前是运行在jupyter-v5上的任何基于python的笔记本。不是的 目前很清楚具体哪个版本可以顺利使用 nbautoeval,但本质上对jupyter的依赖性很小 版本。
它最初是用python2编写的,但现在主要针对python3;希望它仍然适用于python2:)
#安装
最初,nbautoeval被用于mooc课程,然后又被实施 作为git repos;在这种情况下,nbautoeval被简单地注入到这个代码中 使用gitsubtree。
它现在也可以在pypi:
` pip install nbautoeval `
#概述
- 在此早期阶段,框架支持以下类型的练习
- 练习函数:要求学生编写函数
- exerciseregexp:要求学生编写正则表达式
- 练习类:将在类实现上进行测试
一个教师想要完成一个练习,需要写两部分:
- 一个定义练习类实例的python文件。简而言之,这通常包括 *提供一个用python编写的解决方案(比如说一个函数) *提供一组输入数据 *此外,还可以选择使用各种微调来渲染结果
- 一个笔记本可以导入这个练习对象,然后利用它来编写通常是 *在exercise对象上调用example以显示预期输出的示例 *邀请学生编写自己的代码 *对exercise对象调用correction以显示结果。
#已知问题
- 法语中仍有一些硬接线标签
- 基于regexp的练习有太多的变体,因此没有经过很好的测试