Skip to main content

A python package which helps calculate grades for a course.

Project description

gradecalculatorpy

Summary

This python package calculates grades for a course. The package allows users to customize their own course information with self-defined course component names, to update grades for different course components, and even understand how well the final exam needs to be to pass the course or achieve a target final grade.

Usage

Functions

This package contains the following functions:

  • construct_course: Allow users to input the information for one course component (for example, assignment name and corresponding weight) one by one. Saves the course information as a .csv file to the specified file path. (Note: any user self-defined course component name(s) can be accepted)

    • Note: Since this function accepts user interaction input when calling the function, developer team had not yet found a way to pass the function unit test through pytest.
      The unit test scenarios covered in the test_construct_course() is based on the assumption that the input .csv file is successfully generated through a local testing by calling construct_course('dsci524', '/') for example
  • update_grades: Allow users to update course component grade(s) by loading a certain saved course .csv file. The function can then save the updated course information as a new .csv file to the specified file path.

  • predict_final: Calculate how well the final exam has to be in order to pass the course or achieve a certain grade just before the final exam (for the scenario only when the final grade is missing), based on the provided other course component information.

  • calculate_grade: When all course components are presented, calculate the course overall grade based on information provided.

Suitability within Python Ecosystem

This course grade calculator is unique as it provides an interactive way for users to input the course component information and update information as needed. With the predict_final function available, users can understand how well the final exam has to be in order to pass the course or achieve a certain level of grade in this course, then adjust their final review plans based on our calculation, to meet the course expectation.

The package predict_final function does not take any users' previous study or course information into account to calculation of the desired final performance, only based on the current course component information inputted/updated.

There are other course grade calculators in the Python ecosystem. Some of the examples can be found here and here. While other packages focus on auto-grading without user interaction and they do not provide similar functions like predict_final function in this package.

Installation

$ pip install gradecalculatorpy

Usage

Acknowledging the use of OS

Since Windows and Mac systems have different file path naming style and we run all our pytest successfully on Mac. Therefore, we highly recommend the TA grading this assignment using Mac.

Contributing

Interested in contributing? Check out the contributing guidelines. Please note that this project is released with a Code of Conduct. By contributing to this project, you agree to abide by its terms.

Contributors

Members of Group 20 of DSCI524 at UBC:
Chen Lin, Edward Yukun Zhang, Shirley Zhang

License

gradecalculatorpy was created by Chen Lin, Edward Yukun Zhang, Shirley Zhang. It is licensed under the terms of the MIT license.

Credits

gradecalculatorpy was created with cookiecutter and the py-pkgs-cookiecutter template.

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

gradecalculatorpy-0.0.1.tar.gz (6.4 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

gradecalculatorpy-0.0.1-py3-none-any.whl (7.7 kB view details)

Uploaded Python 3

File details

Details for the file gradecalculatorpy-0.0.1.tar.gz.

File metadata

  • Download URL: gradecalculatorpy-0.0.1.tar.gz
  • Upload date:
  • Size: 6.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.1 CPython/3.11.1

File hashes

Hashes for gradecalculatorpy-0.0.1.tar.gz
Algorithm Hash digest
SHA256 ec882a064939f65ddede7861d8da80566c902160bb3747568f01bc052a26707b
MD5 eb40ccf985697529e7802918ec844f08
BLAKE2b-256 bf91bb6fc4e0b71f5f4d618f1a5223ad1d9f8c52a8b3e1b01781f559d5934949

See more details on using hashes here.

File details

Details for the file gradecalculatorpy-0.0.1-py3-none-any.whl.

File metadata

File hashes

Hashes for gradecalculatorpy-0.0.1-py3-none-any.whl
Algorithm Hash digest
SHA256 23391a5c9c6865b1c10832f59199fa18108f526d85d3de58b459456ec8a3f13e
MD5 95adb33f102d68fe3f4e20cc4dd44a83
BLAKE2b-256 a80def566c93b71e7cd706a695fc26d80e0c39f309118c3058f1a0720853eb6c

See more details on using hashes here.

Supported by

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