Skip to content
This repository has been archived by the owner on Aug 26, 2020. It is now read-only.

CHEATSHEET: Métodos Especiais

Paulino edited this page Apr 10, 2019 · 1 revision

Introdução

Os métodos especiais são a essência dos objetos em Python. A partir desses métodos você pode definir comportamentos específicos para a interação entre o seu objeto e o operador. Os métodos mágicos se diferenciam dos demais métodos por terem seus nomes cercados por dois underlines (_). Se você já começou a estudar programação orientada a objetos em Python deve ter se deparado com pelo menos um dels, o __init__.

O método __init__ é o método essencial para a construção de cada objeto. É este o método chamado quando você cria uma nova instância do seu objeto. Esse método dita quais parâmetros são necessários para a inicialização do objeto e o que acontece com cada um dos argumentos fornecidos. Por exmeplo:

class Pessoa:
    def __init__(self, nome, cpf, aniv):
        self.nome = nome
        self.cpf = cpf
        self.nascimento = aniv

O código acima, por exemplo, determina que são necessários três argumentos para a instanciação de um objeto do tipo Pessoa. Se a quantidade de parâmetros for diferente da especificada, o código terá como resultado o levantamento de um TypeError com informações sobre o motivo do erro.

antonio = Pessoa("Antônio")
TypeError: __init__() missing 2 required propositional arguments: 'cpf' and 'aniv'

Os Métodos

Referências

Rafe Kettler's Guide to Python's Magic Methods

Clone this wiki locally