Skip to main content

A Python ToolBox for CourseGrading platform.

Project description

Pygrading

CourseGrading(希冀)信息类专业教学与科研一体化平台开发用Python工具包

Official Site Pypi package Documentation Status GitHub license

What is itInstallQuick StartChange LogFAQCG Site

Made by Charles Zhang • :globe_with_meridians: https://gitlab.educg.net/zhangmingyuan/PyGrading

What is it

希冀平台 全面支撑计算机、大数据、人工智能、集成电路、信息安全、机器人、金融科技、区块链等专业建设。 基于平台建成了涵盖实验、质量指标及过程控制的完整在线实验体系,实现了“任何人、任何时间、任何地点均能开展实验学习”的目标。

通用评测 是一个通用的自动评测框架,基于该框架可以定制开发任何自己需要的自动评测内核。

PyGrading工具包 目前该工具包包含以下功能:

  1. 支持CourseGrading平台通用评测内核快速构建;
  2. 支持适用于通用评测题、云桌面环境和Jupyter实验环境的评测结果JSON串的快速生成;
  3. 支持HTML标签文本内容的快速生成,绝对好用的HTML生成工具;

希望使用本工具能够提高大家的工作效率,祝各位开发顺利!

Install

使用pip可以轻松安装PyGrading:

pip install pygrading

PyGrading的运行环境要求 Python >= 3.5,不支持Python2。

Quick Start

下面从一段简单的代码开始,使用PyGrading创建一个简单的通用评测内核:

import pygrading as gg

# 创建一个任务对象
job = gg.Job()

# 设定任务得分、评定结果和评语
job.score(100)
job.verdict("Accept") 
job.comment("Hello World")

# 输出评测结果
job.print()

这样就可以得到一个评测结果:

{"verdict": "Accept", "score": "100", "rank": {"rank": "-1.0"}, "HTML": "enable", "comment": "Hello World"}

详细的使用手册请参考:PyGrading开发文档

Change Log

v1.0.1 Change Log (2020.11.24)

  1. 去除了渲染结果时默认使用str2html的特性,因为其可能会导致JS失效。

v1.0.0 正式版 Change Log (2020.11.21)

  1. 重构了测试版底层架构,简化了导入步骤和部分包的使用方式。
  2. 添加了命令行程序,支持使用python -m pygrading init创建项目模板。
  3. 添加了多线程评测支持,高效利用服务器资源,提高评测效率。
  4. 添加了评测超时控制功能,限制评测任务执行时间,防止卡死。
  5. 添加了快速提取程序输出中评测指标的功能(键值对智能识别)。
  6. 添加了图片转base64功能,快速生成图片展示元素。
  7. 添加了携带环境变量执行评测功能(用于支撑需要读取不同环境变量的测试用例)。
  8. 添加了评测指令执行静默模式,支持直接抛出评测指令的异常。
  9. 添加了一键打包评测内核功能,打包好的评测内核可以通内核和扩展上传。
  10. 优化了评测过程函数的参数要求,支持不带参数的简单过程函数。

FAQ

暂无内容

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

pygrading-1.1.5.tar.gz (63.2 kB view details)

Uploaded Source

Built Distribution

pygrading-1.1.5-py3-none-any.whl (67.5 kB view details)

Uploaded Python 3

File details

Details for the file pygrading-1.1.5.tar.gz.

File metadata

  • Download URL: pygrading-1.1.5.tar.gz
  • Upload date:
  • Size: 63.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.6.1 requests/2.25.0 setuptools/46.1.3 requests-toolbelt/0.9.1 tqdm/4.52.0 CPython/3.7.3

File hashes

Hashes for pygrading-1.1.5.tar.gz
Algorithm Hash digest
SHA256 542eaaaf7dd76ad85ae59c32cf7b7b64938816faca8d3c861a95604ef99132ba
MD5 920272a5de1f1e11f405139f60130881
BLAKE2b-256 793c5cb000c7601b898b98d34348a510b7e7fbe2f73fc624f75fb5c066a1e1ec

See more details on using hashes here.

File details

Details for the file pygrading-1.1.5-py3-none-any.whl.

File metadata

  • Download URL: pygrading-1.1.5-py3-none-any.whl
  • Upload date:
  • Size: 67.5 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.6.1 requests/2.25.0 setuptools/46.1.3 requests-toolbelt/0.9.1 tqdm/4.52.0 CPython/3.7.3

File hashes

Hashes for pygrading-1.1.5-py3-none-any.whl
Algorithm Hash digest
SHA256 cbbbe9ea27085cc1a79e0916b74efd14008e1298cc6e8e1fef9f53f075b5942a
MD5 78db9a98ea3e816763e17aee7e2accd3
BLAKE2b-256 3751b3f25545e153d3de12c01a6d5e739e54591123c14e6382a2ef5d3eacc394

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page