Junior — Middle
Como pode chamar ou ativar um método privado dentro de uma classe?
sobes.tech IA
Resposta da IA
Em Python, os métodos privados são indicados por dois sublinhados no início do nome, por exemplo, __my_private_method. Eles não estão acessíveis diretamente de fora da classe, mas dentro da classe podem ser chamados como métodos normais.
Exemplo:
class MyClass:
def __my_private_method(self):
print("Este é um método privado")
def public_method(self):
self.__my_private_method() # chamada ao método privado dentro da classe
obj = MyClass()
obj.public_method() # É uma chamada correta que ativa o método privado
Além disso, se precisar chamar um método privado de fora (o que não é recomendado), pode usar _nome_classe + nome do método (name mangling):
obj._MyClass__my_private_method()
Mas isso contorna o mecanismo de encapsulamento e não é uma boa prática.