KnowledgeHub
Questions
Tags
Users
Search
Alex Rivera
|
Logout
Edit Question
Title
Body
I am calling a constructor in ClassA and want to have the resulting object be of a different class (ClassB) if a certain condition is met. I've tried replacing the first argument to __init__() ('self' in the example below) within __init__() but it doesn't seem to do what I want. in main: import ClassA my_obj = ClassA.ClassA(500) # unfortunately, my_obj is a ClassA, but I want a ClassB! in ClassA/__init__.py: import ClassB class ClassA: def __init__(self,theirnumber): if(theirnumber > 10): # all big numbers should be ClassB objects: self = ClassB.ClassB(theirnumber) return else: # numbers under 10 are ok in ClassA. return in ClassB/__init__.py: class ClassB: pass
Tags (comma-separated)
Save Edits
Cancel