Python constructors and __init__
<p>Why are constructors indeed called "Constructors"? What is their purpose and how are they different from methods in a class?</p>

<p>Also, can there be more that one <code>__init__</code> in a class? I tried something like the following, can someone please explain the result?</p>

<pre><code>&gt;&gt;&gt; class test:
    def __init__(self):
        print "init 1"
    def __init__(self):
        print "init 2"


&gt;&gt;&gt; s=test()
init 2
</code></pre>

<p>Finally, Is <code>__init__</code> an operator overloader? </p>
