Poderiam explicar com mais detalhes o que o repr faz?
Poderiam explicar com mais detalhes o que o repr faz?
Olá, Eduardo. Tudo bem?
O método __repr__
em Python é uma função especial, também conhecida como dunder method (de "double underscore"), que é usada para definir uma representação "oficial" de um objeto. Essa representação é geralmente usada para depuração e desenvolvimento.
Quando você implementa o __repr__
em uma classe, está dizendo ao Python como deve ser a representação do objeto daquela classe quando você o imprime ou o inspeciona no console. A ideia é que essa representação seja o mais informativa possível, ajudando a entender o estado interno do objeto.
Por exemplo, se você tem uma classe Jogos
e define o método __repr__
assim:
class Jogos(db.Model):
id = db.Column(db.Integer, primary_key=True, autoincrement=True)
nome = db.Column(db.String(50), nullable=False)
categoria = db.Column(db.String(40), nullable=False)
console = db.Column(db.String(20), nullable=False)
def __repr__(self):
return f'<Jogo {self.nome}>'
Quando você cria um objeto dessa classe e o imprime, o Python usará o método __repr__
para mostrar algo como <Jogo NomeDoJogo>
, onde NomeDoJogo
é o valor do atributo nome
do objeto. Isso é muito útil para identificar rapidamente objetos em listas ou durante a depuração.
Espero ter ajudado.