title: Why does the argument of 'super' matter?
body: <p>I am trying to understand classes in python 3, more specifically inheritance.</p>
  <p>Let's consider the following example:</p>
  <pre><code>class Base():
      def __init__(self, arg1):
          self.arg1 = arg1
          
  class Expansion(Base):
      def __init__():
          super().__init__(arg1)
  
  class Extension(Base):
      def __init__():
          super(Extension, self).__init__(arg1)
  </code></pre>
  <p>Are the classes Expansion and Extension equivalent? If so, when does the argument of 'super' matter?</p>