pythonwhat
Verify Python code submissions and automatic generation of meaningful feedback. Originally developed for Python exercises on DataCamp, to be used in so-called Submission Correctness Tests, but can also be used independently.
- If you are new to teaching on DataCamp, check out https://authoring.datacamp.com.
- If you want to learn what SCTs are and how they work, visit this article specifically.
- For a complete overview of all functionality inside
pythonwhatand articles about what to use when, consult https://pythonwhat.readthedocs.io.
Installation
# latest stable version from PyPi
pip install pythonwhat
# latest development version from GitHub
pip install git+https://github.com/datacamp/pythonwhat
Demo
To experiment locally, you can use setup_state() and write SCTs interactively.
The code throws an error when the underlying checks fail.
from pythonwhat.local import setup_state
s = setup_state(stu_code = "x = 5", sol_code = "x = 4")
s.check_object('x')
# No error: x is defined in both student and solution process
s.check_object('x').has_equal_value()
# TestFail: Check the variable `x`. Unexpected expression value: expected `4`, got `5`.
# Debugging state
s._state # access state object
dir(s._state) # list all attributes of the state object
s._state.student_code # access student_code of state object
To learn how to include an SCT in a DataCamp course, visit https://authoring.datacamp.com.
Run tests
Use Python 3.5
# install packages used in tests (should be reduced)
pip install -r requirements.txt
# install pythonwhat
cd /path/to/pythonwhat
pip install -e .
pytest
To disable deprecation warnings: $ export PYTHONWARNINGS="ignore"
For more details, questions and suggestions, contact learn-engineering@datacamp.com.
Release files for pythonwhat 2.13.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| pythonwhat-2.13.0.tar.gz | 49.8 kB | Details |
Release files / pythonwhat-2.13.0.tar.gz
| Download URL | pythonwhat-2.13.0.tar.gz |
|---|---|
| Size | 49.8 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
fd445637d4e622a761d54fd1d481dba165252672dad9bcb0ec4671da2fcf77ee
|
|
BLAKE2b-256 checksum How to use checksums |
eb2bf1a2d0bfaac8cf309c061151148b11a171b541df383452f228487a9d0c43
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |