三维建模课程的作业检查

grader的Python项目详细描述


平地机

分级器是3D建模类的自定义赋值检查器,但它足够灵活,可以用于其他用途。 作者:Luis Naranjo

用法

首次运行Grader时,它会在“我的文档”(Windows)或“文档”(Mac)中创建一个名为“Grader”的文件夹。

以下是“grader”的内容:

settings.conf

students.txt

分级器文件

log.txt

settings.conf

设置

此文件是定义项目的位置。

文件以下列程序设置开始:

显示成员

这控制是否报告学生丢失项目的内容丢失。

它可以是真的也可以是假的

例如:

show members = True

将其放入settings.conf将使分级器报告丢失项目中的每个丢失文件。

如果设置为false,则分级器将只报告项目丢失。

大写

这控制学生项目的资本化。

评分者依赖于项目/练习命名的一致性。

对于正确的格式,学生不是最可靠的,因此grader提供了一种方法来规范grader_files文件夹中的所有文件/文件夹。

大写有以下可能值:大写、小写、大写、标题

大写仅首字母大写。

小写表示一切小写。

一切都是大写的。

标题将每个单词大写。

例如:

capitalization = lower

这将使grader_files文件夹中的每个文件夹和文件都小写。

注意:

  • 注意上面和标题,它们会弄乱你的文件扩展名。
  • 如果设置不正确,grader将无法运行。

log

这将控制成绩报告的位置。

它可以是真的也可以是假的

如果是真的,结果将记录在my documents/grader/log.txt中

如果为false,则结果将打印到命令行而不保存。

项目

您可以定义任意多个项目

每个项目都可以有你想要的练习。

每个练习可以有任意多的文件扩展名。

例如:

[project 3]
exercise 1 = .jpg,.3dm
exercise 2 = .3dm

注意,练习1有两个文件扩展名,它们由逗号分隔,而不是空格。

如果在students.txt中只定义了一个学生(naranjo),grader将在grader_files中查找以下文件和文件夹:

Naranjo项目3(文件夹)

Naranjo练习1.jpg(Naranjo项目3内部)

Naranjo练习1.3dm(Naranjo项目3内)

Naranjo练习2.3dm(Naranjo项目3内)

students.txt

这就是学生的定义。

students.txt非常简单。

文件中的每一行都应该有学生的姓氏,没有别的了。

不要跳过任何一行。

这将起作用:

depp
clooney
naranjo

这不会:

depp

clooney

naranjo

分级器文件

这是您放置学生项目的文件夹。 每个文件夹都应按照以下约定命名(括号中的内容是变量):

{lastname}{projectname}

这些文件夹中包含的练习应符合以下约定:

{lastname}{exercisename}

log.txt

结果可以存储在这里。

这是通过settings.conf中的log变量控制的

安装

grader是用python2.7.3编写的,因此必须先安装python,然后才能快跑。

这里有一个很好的安装指南:http://docs.python-guide.org/en/latest/index.html

它只有一个依赖项(configobj),与程序捆绑在一起。

它可以在python包索引中的http://pypi.python.org/pypi/grader

源代码位于https://github.com/doubledubba/grader

一旦安装,grader就会设置一个名为“grader”的控制台脚本。

这允许您打开命令提示符/终端,键入'grader'并按回车键。

这将激活平地机。

在命令提示符上看到的内容取决于在settings.config中设置的日志变量

grader还添加了一个批处理文件(grader.bat),该文件可以自动执行此单击过程。

如果您在Windows上,您应该可以单击此按钮运行Grader。

为linux和mac操作系统创建了一个类似的文件grader.sh

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
安卓在java中加入字符串组以创建复合字符串   java系统甚至不点击“下一步”或“上一步”按钮就将我返回到上一页,而不是进入下一页   java如何在arrayList中获取特定列的不同值   CXF GZIP REST JAVA   Java:使用大量半恒定标志检查优化循环中的循环?   java如何在两个应用程序之间进行会话管理?   java SVG文件使用蜡染(但没有轴线)转换为PNG   使用协议缓冲区和内部数据模型的java   java如何在logtag 安卓中打印和查看字符串的值   javascript如何在NodeJs中应用Java/Spring的分层架构?   java Spring URL在JSP中编码不正确   模式对话框后面的java工具提示   java WSRPC生成日历对象而不是日期   在对象外部无法识别类变量   java将图像从文件读/写到BuffereImage的最快方法?   JavaSpring数据存储库对具有不同Id的子类使用抽象超类   安全在Java 5.0上运行web应用程序服务器有危险吗?