Junior — Middle
O que acontece primeiro: a execução do construtor ao criar um objeto ou a chamada do método init?
sobes.tech IA
Resposta da IA
Em Python, ao criar um objeto, primeiro é chamado o método __new__, que é responsável por criar uma instância da classe, e depois é chamado o construtor __init__, que inicializa o objeto criado.
Não existe um método init como um método padrão separado em Python, provavelmente refere-se a __init__.
Resumindo, a ordem é:
__new__— criação do objeto__init__— inicialização do objeto
Exemplo:
class MyClass:
def __new__(cls, *args, **kwargs):
print('Criando objeto')
return super().__new__(cls)
def __init__(self):
print('Inicializando objeto')
obj = MyClass()
Saída:
Criando objeto
Inicializando objeto