Skip to main content

A commandline tool to create examination schedules

Project description

Exam_scheduler

a srbcheema1 production contributions welcome Open Source Love Build Status HitCount

exam_scheduler is a commandline tool to produce teacher-duty schedule in examination for a school/college.

Installation

Install using pip (Recommended)

  • Use pip to install, user --user flag
python3 -m pip install --user exam_scheduler

Build from Source

  • Clone the repository and checkout to stable commit
git clone https://github.com/srbcheema1/exam_scheduler
cd exam_scheduler
git checkout <latest_version say: v0.0.x>
  • install requirements
python3 -m pip install --user -r requirements.txt
  • Install exam_scheduler
python3 setup.py install --user
  • Building Source Distribution
python3 setup.py sdist

Inputs Required

  • room_list - includes room-name and teachers-required as compulsory attributes. Other attributes may follow.

  • teacher_list - includes teacher-name and rank as compulsory attributes. Other attributes may follow.

  • schedule_list - A 2D matrix includeing relation between a session and a room, value is 'Y' if room is required on particular session.

Input can be provided in a xlsx or csv file

Config files

  • config.json - includes paths for input files in json format. default path ~/.config/exam_scheduler/config.json
{
    "room_list": "/home/srb/programs/exam_schedular/input/room_list.csv",
    "teacher_list": "/home/srb/programs/exam_schedular/input/teacher_list.csv",
    "schedule_list": "/home/srb/programs/exam_schedular/input/schedule_list.csv"
}

By default it will automtically pick files from working-directory OR input-folder containing room_list,teacher_list,schedule_list in their names.

  • work_ratio.json - includes working ratio for different ranks with respect to rank 1.
{
    "1": 100,
    "2": 150,
    "3": 200,
    "4": 250,
    "5": 300
}

This means if rank 1 will work for 100 units then rank 3 will work 200 units, simply rank 2 will work twice than rank 1.

Usage

srb@srb-pc:$ exam_scheduler --help
usage: exam_scheduler.py [-h] [-v] [-o OUTPUT]

optional arguments:
  -h, --help            show this help message and exit
  -v, --version         Display version number
  -o OUTPUT, --output OUTPUT
                        Output file name, default output.xlsx
srb@srb-pc:$ exam_scheduler -o result.xlsx
Using room_list : /home/srb/programs/exam_schedular/input/room_list.csv
Using teacher_list : /home/srb/programs/exam_schedular/input/teacher_list.csv
Using schedule_list : /home/srb/programs/exam_schedular/input/schedule_list.csv
Output written to : /home/srb/programs/exam_schedular/result.xlsx

Contact / Social Media

Github LinkedIn Facebook

Developed by

Developer / Author: Srb Cheema

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

exam_scheduler-0.0.1.tar.gz (6.6 kB view details)

Uploaded Source

Built Distribution

exam_scheduler-0.0.1-py3.6.egg (18.8 kB view details)

Uploaded Source

File details

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

File metadata

  • Download URL: exam_scheduler-0.0.1.tar.gz
  • Upload date:
  • Size: 6.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.12.1 pkginfo/1.4.2 requests/2.19.1 setuptools/40.4.3 requests-toolbelt/0.8.0 tqdm/4.28.1 CPython/3.6.7

File hashes

Hashes for exam_scheduler-0.0.1.tar.gz
Algorithm Hash digest
SHA256 ddbe2c4c47e1f37175927aa800a6c7a7f09376ee24a2d418e38a50d8700a1adb
MD5 1c818aacdec182c1d7cf242c3aa3b897
BLAKE2b-256 97ac505fa51ae3c5da18ec09bf109d33c09f3bd7a88d9b55a2c1e83bd8bc3188

See more details on using hashes here.

File details

Details for the file exam_scheduler-0.0.1-py3.6.egg.

File metadata

  • Download URL: exam_scheduler-0.0.1-py3.6.egg
  • Upload date:
  • Size: 18.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.12.1 pkginfo/1.4.2 requests/2.19.1 setuptools/40.4.3 requests-toolbelt/0.8.0 tqdm/4.28.1 CPython/3.6.7

File hashes

Hashes for exam_scheduler-0.0.1-py3.6.egg
Algorithm Hash digest
SHA256 935c4e553a6068f6d12997eb52b22d93cccf595fc8f1c8baceac34565aeaaac6
MD5 027760ab716acd55c118770b5c8bb82c
BLAKE2b-256 e1a1cf5e7bbb1d49666c9f3d43321df118866e302e23fe15e0a9a44950ab0c10

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