Should __init__() call the parent class's __init__()?
<p>I'm used that in Objective-C I've got this construct:</p>

<pre><code>- (void)init {
    if (self = [super init]) {
        // init class
    }
    return self;
}
</code></pre>

<p>Should Python also call the parent class's implementation for <code>__init__</code>?</p>

<pre><code>class NewClass(SomeOtherClass):
    def __init__(self):
        SomeOtherClass.__init__(self)
        # init class
</code></pre>

<p>Is this also true/false for <code>__new__()</code> and <code>__del__()</code>?</p>

<p><strong>Edit:</strong> There's a very similar question: <a href="http://stackoverflow.com/questions/753640/inheritance-and-overriding-init-in-python">Inheritance and Overriding <code>__init__</code> in Python</a></p>
