Python · Essencial · Inglês · Técnico
dunder init
Método especial __init__ que inicializa o objeto recém-criado, recebendo self e os argumentos passados à classe. É onde se definem os atributos de instância.
Onde usar
Aparece em toda classe, e em code review se discute o que cabe nele: atributos e validações simples, não trabalho pesado como chamadas de rede.
Em código
class Conta:
def __init__(self, titular, saldo=0):
self.titular = titular
self.saldo = saldo
c = Conta('Ana', 50)
print(c.saldo) # 50Exemplos
Set the attributes in dunder init, nothing heavier.
Defina os atributos no dunder init, nada mais pesado.
Your dunder init forgot to call super.
O seu dunder init esqueceu de chamar o super.
Cuidado
Não o chame de construtor puro: quem cria o objeto é o __new__; o init apenas o prepara e deve devolver None.
Sinônimos
inicializador