title: how do i call the parent method if i have a function with the same name in the current class (if possible)
body: <p>I was reading on method overriding and in other languages, it seems that to be completely overridden, the method has to have the same signature (parameters, return type... etc)</p>
  <p>so I was trying to check if that's how it worked with python and I tried the next code</p>
  <pre class="lang-py prettyprint-override"><code>class Person():
      def __init__(self, name, age):
          self.name = name
          self.age = age
  
      def print_name(self, last_name):
          print(self.name + &quot; &quot; + last_name)
  
  class Superhero(Person):
      def __init__(self, name, age, power):
          super().__init__(name, age)
          self.power = power
  
      def print_name(self):
          print(self.name)
  
  
  human = Person(&quot;Ron&quot;, 23)
  super_human = Superhero(&quot;Superman&quot;, 30, &quot;Flying&quot;)
  
  human.print_name(&quot;Wesley&quot;)
  super_human.print_name(&quot;Kent&quot;)
  </code></pre>
  <p>and I'm receiving an error on the <code>super_human.print_name(&quot;Kent&quot;)</code> part that it takes one argument but I'm passing two, I know the MRO exist in python where I look into (object &gt; class &gt; parent class), so I'm wondering if there's a way that I can call the <code>print_name()</code> function that exist in the parent class not the current one, since they take different parameters.</p>