Grade Manager
Manage student records and calculate statistics using dictionaries, OOP, and file persistence.
Part of the free Python course at LearnCodingFast — hands-on lessons with examples you run in your browser, plus practice exercises and a quick quiz.
Project Overview
Concepts: Dictionaries, OOP, file persistence, exception handling.
Key Features:
- • Add/remove students
- • Record grades for multiple subjects
- • Calculate GPA and averages
- • Generate grade reports
- • Export data to CSV
Technologies & Concepts:
Starter Code
This is a command-line app that uses input() for user interaction. The browser demo below shows a simplified version. For the full interactive experience, copy the code below and run it in your local Python environment (IDLE, VS Code, or terminal). Jump to the Browser Demo .
Here's a functional starting version of your app. Copy it to your local Python editor and run it.
- Copy the code above
- Save it as grade_manager.py
- Open terminal and run: python grade_manager.py
- Follow the interactive menu to manage students
🎮 Browser Demo (Simplified Version)
This browser version demonstrates the core logic without user input. Click Run to see it work!
Enhancement Ideas 🚀
1. CSV Export
Export student data to CSV format using the csv module for easy import into Excel.
2. Multiple Subjects
Track grades for different subjects (Math, English, Science) and calculate subject-specific averages.
3. Grade Statistics
Calculate class statistics like median, mode, highest, and lowest grades.
4. Persistent Storage
Save and load student data using JSON files so data persists between sessions.
5. Search & Filter
Add search functionality and filter students by grade range or letter grade.
Next Steps
- Run the starter code and test basic functionality
- Add input validation for all user inputs
- Implement JSON file storage for persistence
- Create a proper grade report format
- Add multiple subject support
- Build class-wide statistics features
- Document and share your project!