I would like to give a daughter class some extra attributes without having to explicitly call a new method. So is there a way of giving the inherited class an __init__ type method which does not override the __init__ method of the parent class?
I have written the code below purely to illustrate my question (hence the poor naming of attributes etc).
class initialclass():
    def __init__(self):
        self.attr1 = 'one'
        self.attr2 = 'two'    
class inheritedclass(initialclass):
    def __new__(self):
        self.attr3 = 'three'
    def somemethod(self):
        print 'the method'
a = inheritedclass()
for each in a.__dict__:
    print each
#I would like the output to be:
attr1
attr2
attr3
Thank you
 
     
     
     
     
     
     
     
    