exam_scheduler is a commandline tool to produce teacher-duty schedule in examination for a school/college. It also acts as library-cum-backbone for ExamScheduler a web-based tool.
- Use pip to install, user
--user
flag
python3 -m pip install --user exam_scheduler
python3 -m pip install --user exam_scheduler
Don't forget ~/.local/bin
should be in your PATH
. Add line export PATH=$PATH:"~/.local/bin"
in your .bashrc
for windows users you should have python3 installed in your system
python3 -m pip install --user exam_scheduler
- 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
-
room_list - includes
room-name
andteachers-required
as compulsory attributes. Other attributes may follow.Res
(Case-senstive) is special room name for reserved purposes.- Recommended to be used instead of dummy rooms.
-
teachers_list - includes
teacher-name
andrank
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.
- By default empty cell is treated as 'N'
-
work_ratio - Includes rank and work_ratio as compulsory attributes. Other optional attributes may follow.
By default it will automtically pick excel files from working-directory OR input
folder containing room_list
,teachers_list
,schedule_list
and work_ratio
in their names.
NOTE: the files should be in xls format, not in xlsx format. For now exam-scheduler is not able to read xlsx format
For more instructions please visit our help page.
srb@srb-pc:$ exam_scheduler --help
usage: exam_scheduler.py [-h] [-v] [-o OUTPUT] [-s SEED] [-r RESERVED]
[-vr VR | -vs VS | -vt VT]
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
-s SEED, --seed SEED seed value for randomness
-r RESERVED, --reserved RESERVED
reserved number of seats for each session
-d, --debug print debug info
-vr VR verify room_list file
-vs VS verify schedule_list file
-vt VT verify teachers_list file
srb@srb-pc:$ exam_scheduler -o result.xls
Using room_list : /home/srb/programs/exam_scheduler/input/room_list.xls
Using teachers_list : /home/srb/programs/exam_scheduler/input/teachers_list.xls
Using schedule_list : /home/srb/programs/exam_scheduler/input/schedule_list.xls
Using work_ratio : /home/singhsar/srb/extra/testing_exam_scheduler/work_ratio.xls
Using seed value : 5
Using reserved value : 0
rank count : {
"0": 33,
"1": 7,
"2": 23,
"3": 77,
"4": 59,
"5": 91
}
average duties : {
"0": 0.0,
"1": 2.0,
"2": 2.347,
"3": 3.0,
"4": 3.0,
"5": 3.0
}
type of rooms : {
"[1, 3, 5]": 1,
"[1, 4, 5]": 13,
"[2, 3, 5]": 1,
"[2, 4, 5]": 53,
"[3, 4, 5]": 85,
"[3, 4]": 25,
"[3, 5]": 119,
"[4, 5]": 1
}
Output written to : /home/srb/programs/exam_scheduler/result.xlsx
Developer / Author: Srb Cheema
Collaborator : Rakesh Kumar