A simple desktop quiz application built with Python and Tkinter. It presents multiple-choice questions one at a time, tracks your score, and lets you restart when finished.
- Multiple-choice questions with 4 answer options each
- Score tracking throughout the exam
- Warning popup if you try to submit without selecting an answer
- Final score display when all questions are completed
- Restart button to retake the exam
- Python 3 — core programming language
- Tkinter — Python's built-in GUI library (no install needed)
-
Make sure Python 3 is installed on your machine:
python3 --version
-
Clone or download this repository, then navigate to the project folder.
-
Run the app:
python3 exam_app.py
No external libraries are required — Tkinter comes bundled with Python.
exam_app.py # Main application file (all logic and UI in one file)
README.md # Project documentation
| Class | Responsibility |
|---|---|
Question |
Stores a single question's prompt, options, and correct answer |
Exam |
Manages question flow, score tracking, and reset logic |
ExamApp |
Builds and controls the Tkinter GUI |
In exam_app.py, scroll to the question_list section at the bottom and add a new Question object:
Question(
"Your question text here?",
["Option A", "Option B", "Option C", "Option D"],
"Option A" # This must exactly match one of the options above
)
⚠️ The answer string must exactly match one of the option strings, including capitalization.
Jay — Student Project
University of New Orleans