我有一类计算机科学专业的学生,我正在编写一个简单的Python程序来练习denary< - >二进制转换,他们将不得不交出程序的文本文件输出,以确认他们可以在合理的时间内完成它们。没问题。
我也想使用相同的程序向他们演示一些Python,因此他们需要访问源代码。
我担心的是,通过更改源代码以确保输出为其提供满分,这使他们很容易在测试中作弊。我想要做的是包括一个哈希/ checkdigit /一些其他形式的验证,也可以输出到文本文件,并将确认他们使用的程序,因为我给它们,而不是修改版本。
任何基于其名称,日期等的算法都不够,因为他们可以将该算法复制到他们自己的版本,它需要是我提供的代码所特有的。也许基于我的程序创建日期?或者别的东西无法复制。
此外,由于网络的限制,我只能访问那些安装了IDLE的模块。
有没有人对合适的方法有任何想法?
答案 0 :(得分:0)
我会写另一个脚本来导入你上面描述的python程序。在该脚本中,我还将使用电子邮件模块附加并发回您的脚本,脚本和转换后的输出文件。有关电子邮件模块的信息可在此处找到 - > https://docs.python.org/3.3/library/email-examples.html
一旦你有了所有响应,你可以使用shell diff命令查看是否有人修改了你的原始代码。