Open
Show file tree
Hide file tree
Changes from all commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Jump to
Failed to load files.
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,16 @@
from data import question_data
from question_model import Question
from quiz_brain import QuizBrain

quiz_list = []
for question in question_data:
q_object = Question(question["question"], question["correct_answer"])
quiz_list.append(q_object)

quiz = QuizBrain(quiz_list)

while quiz.still_has_question():
quiz.next_question()

print("You've completed the quiz")
print(f"Your final score was: {quiz.score}/{quiz.question_num}")
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,4 @@
class Question:
def __init__(self, text, answer):
self.text = text
self.answer = answer
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,24 @@
class QuizBrain:
def __init__(self, question_list):
self.question_list = question_list
self.score = 0
self.question_num = 0

def still_has_question(self):
return self.question_num < len(self.question_list)

def next_question(self):
current_question = self.question_list[self.question_num]
self.question_num += 1
user_answer = input(f"Q.{self.question_num}: {current_question.text} (True/False): ")
self.check_answer(user_answer, current_question.answer)

def check_answer(self, user_answer, correct_answer):
if user_answer.lower() == correct_answer.lower():
self.score += 1
print("You got it right!")
else:
print("That's wrong!")
print(f"The correct answer was: {correct_answer}.")
print(f"Your current score is: {self.score}/{self.question_num}")
print("\n")