title: How does python interpreter build objects
body: <p>I recently started following Python after studying Java. I'm confused with the way of python interpreter's object construction.</p>
  
  <p>Compared to Java when we construct an object when simply provide our arguments, for Python that is the case too.</p>
  
  <p>But I can't think why the <code>__init()__</code> method requires a <code>self</code> parameter when we define it in our class.</p>
  
  <p>I read <a href="https://stackoverflow.com/questions/2709821/what-is-the-purpose-of-the-word-self">this</a> question and I got that the methods require a <code>self</code> parameter because python calls a method in the format <code>ClassA.methodA(ObjectA, arg1, arg2)</code>.</p>
  
  <p>But I really don't get why the <code>__init()__</code> method require this.</p>
  
  <p>Is it because the way that Python generate an object differs from the way that Java generates an object.
  I really appreciate if someone can explain it to me.</p>