一个简单的python ejudge。支持多种语言和沙箱。
ejudge的Python项目详细描述
'Engult'是一个实现代码的基本电子判断/分级器的库。
它可以在沙箱中运行Python、露比、C和C++代码,支持其他
语言。有关更多信息,请参阅iospec手册。_ iospec:https://readthedocs.org/iospec/
输入可以是每行一个输入的简单文本文件,也可以是扩展名为“.iospec”的iospec源文件。
`$ejudge grade<;source>;<;iospec inputs>;``:
运行输入源代码并将结果与给定的iospec测试用例进行比较。它返回一条反馈消息,告诉代码是否按预期运行,如果出现错误,可能会出现什么问题。
library
==
:mod:`ejudge`模块中的主要入口点是:func:`ejudge.run`和
:func:`ejudge.grade`函数。第一个负责针对
一组输入运行代码,并收集生成的io。第二个函数运行代码并将其与预期的iospec结果进行比较。
>;>;来自ejudge import run
>;>;src='print(“你好%s!”%input(“name:”)'
>;>inputs=['john']
>;>spec=run(src,inputs,lang='python')
>;>list(spec[0]);获取第一个测试用例
[out('name:'),in('john'),out('hello john!')]
它可以在沙箱中运行Python、露比、C和C++代码,支持其他
语言。有关更多信息,请参阅iospec手册。_ iospec:https://readthedocs.org/iospec/
输入可以是每行一个输入的简单文本文件,也可以是扩展名为“.iospec”的iospec源文件。
`$ejudge grade<;source>;<;iospec inputs>;``:
运行输入源代码并将结果与给定的iospec测试用例进行比较。它返回一条反馈消息,告诉代码是否按预期运行,如果出现错误,可能会出现什么问题。
library
==
:mod:`ejudge`模块中的主要入口点是:func:`ejudge.run`和
:func:`ejudge.grade`函数。第一个负责针对
一组输入运行代码,并收集生成的io。第二个函数运行代码并将其与预期的iospec结果进行比较。
>;>;来自ejudge import run
>;>;src='print(“你好%s!”%input(“name:”)'
>;>inputs=['john']
>;>spec=run(src,inputs,lang='python')
>;>list(spec[0]);获取第一个测试用例
[out('name:'),in('john'),out('hello john!')]