¿Cómo hacer cumplir la firma del método para las clases secundarias?

Lenguajes como C #, Java tiene sobrecargas de métodos, lo que significa que si la clase secundaria no implementa el método con la firma exacta no sobrescribirá el método principal.

¿Cómo hacemos cumplir la firma del método en las clases secundarias en Python? El siguiente ejemplo de código muestra que la clase secundaria sobrescribe el método principal con una firma de método diferente:

>>> class A(object):
...   def m(self, p=None):
...     raise NotImplementedError('Not implemented')
... 
>>> class B(A):
...   def m(self, p2=None):
...     print p2
... 
>>> B().m('123')
123

Si bien esto no es súper importante, o tal vez por diseño de python (por ejemplo, * args, ** kwargs). Estoy pidiendo esto por razones de claridad si esto es posible.

Tenga en cuenta:

Yo he tratado@abstractmethod y elABC ya.

Respuestas a la pregunta(5)

Su respuesta a la pregunta