Python · Intermediário · Inglês · Técnico
repr
Função embutida (e método __repr__) que devolve a representação não ambígua de um objeto, voltada a desenvolvedores. Difere de str(), que gera o texto amigável para o usuário.
Onde usar
É o que aparece ao inspecionar objetos no REPL, em logs e em falhas de teste. Um __repr__ bom, como Ponto(x=1, y=2), poupa muito tempo de depuração.
Em código
class Ponto:
def __init__(self, x, y):
self.x, self.y = x, y
def __repr__(self):
return f'Ponto({self.x}, {self.y})'
print(repr(Ponto(1, 2)))Exemplos
Add a repr so the logs show something useful.
Adicione um repr para os logs mostrarem algo útil.
The repr in the failure message is just a memory address.
O repr na mensagem de falha é só um endereço de memória.
Cuidado
Se só __repr__ existir, str() o usa como reserva; o inverso não vale, então defina primeiro o __repr__.
Origem
Abreviação de representation, representação.