Python Forum

Full Version: Help with Python Inheritance (One parent, two children)
You're currently viewing a stripped down version of our content. View the full version with proper formatting.
class Question:
    def __init__(self, prompt, answer):  
        self.prompt = prompt            
        self.answer = answer


question_prompts = [  # array
    "What color are apples?\n(a) Red/Green\n(b) purple\n(c) Orange\n\n",
    "What color are bananas?\n(a) Teal\n(b) Magenta\n(c) Yellow\n\n",
    "What color are strawberries?\n(a) Yellow\n(b) Red\n(c) Blue\n\n"
]

questions = [
    Question(question_prompts[0], "a"),  
    Question(question_prompts[1], "c"),  
    Question(question_prompts[2], "b"),
]


def run_test(questions):
    score = 0
    for question in questions:
        answer = input(question.prompt)
        if answer == question.answer:
            score += 1
    print("You got " + str(score) + "/" + str(len(questions)) + " correct")

run_test(questions)
This is my first time using Python. I have to make question_prompts, and questions the children. I have to make Question the parent. I've experimented in many ways trying to make each a separate class, I've spent a while trying to figure it out along with reading multiple articles. I am a beginner and would appreciate any help Smile
Not sure what you are asking. Currently you have a class called Question, and questions is an array of objects of type Question. Can you clarify what you are wanting to do?
Okay so I'm trying to call the children functions from the parent function. So questions and run_test are the children, and I'm trying to make it in a way where they are called from the parent function (question_prompts)
I am afraid you are confused big time with concepts and terminology. Best would be to revisit your course material/study notes, etc.

Inheritance, parent, child are concept and terms from object oriented programming (OOP). You have one class and no inheritance whatsoever
question_prompts and questions are lists, not functions. The only function is run_test.

Post your assignment verbatim or explain better what is required