This project is a simple student management system developed in Python using Object-Oriented Programming principles. The application allows management of students, teachers, courses, and grades through a menu-driven interface.
The project was developed to demonstrate the use of classes, inheritance, dictionaries, lists, functions, and file handling.
- Add new students
- Store student information including name, age, and student ID
- Enroll students in courses
- Assign grades to students
- Calculate student GPA
- Add new teachers
- Assign courses to teachers
- View teacher information and assigned courses
- Create courses
- Enroll students in courses
- Calculate course average grades
- Display course information
The application stores information using Python dictionaries and lists:
- Students are stored using their Student ID as the key
- Teachers are stored using their Teacher ID as the key
- Student grades are stored in dictionaries
- Course information is maintained within the system
The system can export current data to a text file for record-keeping purposes.
The application uses inheritance to reduce code duplication and improve organization.
Base class containing:
- Name
- Age
- ID Number
Inherits from Person and adds:
- Grade management
- GPA calculation
Inherits from Person and adds:
- Course assignment functionality
Manages:
- Students
- Teachers
- Course statistics
- Python
- Object-Oriented Programming (OOP)
- Dictionaries
- Lists
- File Handling
- Object-Oriented Programming
- Inheritance
- Data Structures
- File Operations
- Program Organization
- Python Fundamentals
Argyris Leakos



