If I have a class hierarchy like so: class A(object): def __init__(self, s): self.s = s def foo(self, s): return A(s)
class B(A): def __init__(self, s): A.__init__(self, s) If I make a B: b = B(0) I'd like b.foo(1) to return an instance of B. Is there a way to do that besides implementing a construct(self, s) for each part of the hierarchy? I.e. is there a way for the base class to look at self and find out what type to create? I'm using Python 2.7.5, but I'm curious what the 3.x answer is too. -- https://mail.python.org/mailman/listinfo/python-list