sobrecarregar métodos é complicado em python. No entanto, pode haver uso de passagem de variáveis dict, list ou primitivas.
Eu tentei algo para meus casos de uso, isso pode ajudar aqui a entender as pessoas a sobrecarregar os métodos.
Vamos dar o exemplo de uso em um dos encadeamentos stackoverflow:
um método de sobrecarga de classe com a chamada de métodos de classes diferentes.
def add_bullet(sprite=None, start=None, headto=None, spead=None, acceleration=None):
passe os argumentos da classe remota:
add_bullet(sprite = 'test', start=Yes,headto={'lat':10.6666,'long':10.6666},accelaration=10.6}
OU add_bullet(sprite = 'test', start=Yes,headto={'lat':10.6666,'long':10.6666},speed=['10','20,'30']}
Portanto, o manuseio está sendo alcançado para lista, dicionário ou variáveis primitivas de sobrecarga de método.
experimente para seus códigos