Ola, gostaria de mais exemplos de como se usa a def repr
Você está vendo a versão anterior da nova experiência da Alura que estamos preparando para você. Em breve, ela ganha uma identidade visual novinha totalmente pensada em potencializar seus estudos!
Ola, gostaria de mais exemplos de como se usa a def repr
Oi Clebson, tudo bem?
Antes, vale ressaltar a diferença entre utilizar o __str__ e o __repr__ . Enquanto o primeiro é responsável por retornar o objeto para o usuário final, o segundo é utilizado para retornar o objeto para o programador, de uma forma mais completa. Muito utilizado quando é necessário algum tipo de depuração de código.
O objetivo de repr é não ser ambíguo, enquanto o de str é legível . Exemplo: se suspeitarmos que um float tem um pequeno erro de arredondamento, repr nos mostrará, enquanto str não.
Vamos a um exemplo simples:
from decimal import Decimal
number = Decimal(1.25)
print(str(number)) #Resultado: 1.25
print(repr(number)) #Resultado: Decimal('1.25') Observe que utilizando o método repr ele nos mostra mais informações sobre a variável "number". Enquanto o str nos devolve apenas um valor, algo que o usuário final entenderia, já o str nos devolve algo que o programador irá entender. Pegou a ideia?
Deixo abaixo 3 referências sobre este assunto:
Qualquer dúvida, fique a vontade. Abraços e bons estudos!