Easy to use, multi-level grade weighting system
Project description
ScoreTree
ScoreTree is an easy to use, multi-level grade weighting system that serves as excellent tool for cascade grading methods.
Installation
This package has been released through PyPI, so it can be installed using Python's pip
module:
python -m pip install scoretree
[!NOTE] The command above asumes that your Python interpreter is aliased to
python
and references a version equal to or greater than 3.10
Alternatively, it is also possible to clone this repository and install the package via pip
and/or build
.
Usage
Here is an usage example. Feel free to take a look at other examples in the corresponding section of the repository.
from scoretree import Score, ScoreArea, ScoreTree
# Define a score tree:
st = ScoreTree([
# Add a list of areas to be evaluated:
ScoreArea(name=f"Simulation", weight=1, items=[
# Each area can contain other areas and/or scores:
ScoreArea("Stop maneuver", .2, [
# Scores are the minimal grading unit:
Score(
name="Distance to end",
weight=.8,
score_range=(0, 10),
value=9.8848,
inverse=True
),
Score("Deceleration intensity", .2, (0, 20), value=185555)
]),
# Different instance creation syntax:
ScoreArea("Track performance", .8, [
Score("Speed", .3, (0, 20), 5),
ScoreArea("Efficiency", .7, [
Score("Track time", .5, (0, 40), 30),
Score("Track distance", .5, (0, 200), value=10, inverse=True)
])
])
])
], colorized=True) # Enable or disable colorized output.
print(f"Total simulation score: {st.score}")
This would be the colorized output for the code snippet above:
Contributing
Since this is a very small project that can be easily improved and can expand its functionality way further down the development process, any contributions, suggestions or bug reports are more than welcome!
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
Built Distribution
Hashes for scoretree-1.1.0-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 90eaa4344fdf93fd5a70a43c2789706521ccaa66aabe66f5b28acd67ac4612a6 |
|
MD5 | 88c115f68d401fb36668626303a335c4 |
|
BLAKE2b-256 | 372d1104651d4a80503f663250a4a4bc543bc23abba947c51c4ecc9998a39ed2 |