Qual a diferença entre __str__ e __repr__?
Neste artigo você verá a diferença entre __str__ e __repr__ em Python – descubra em qual situação utilizar cada um dos operadores!
Fala programador(a), beleza? Bora aprender mais sobre as instruções __str__ e __repr__ de Python!
Basicamente o __str__ serve para exibir ao usuário final um objeto
Já o __repr__ serve para exibir um objeto para os desenvolvedores do código
Veja um exemplo:
import datetime today = datetime.datetime.now() print(str(today)) # 2020-07-08 13:16:04.162076 print(repr(today)) # datetime.datetime(2020, 7, 8, 13, 16, 4, 162076)
Como você pode observar as saídas são diferentes, cada uma importa de uma forma específica para quem as lê
A primeira, com str, é legível aos clientes, já a de repr não
Porém a maioria das classes não tem diferenciação no resultado final, então tome cuidado
Veja um exemplo:
class Pessoa:
def __init__(self, nome, idade):
self.nome = nome
self.idade = idade
joao = Pessoa("João", 30)
print(str(joao)) # <__main__.Pessoa object at 0x7f7c8903d4c0>
print(repr(joao)) # <__main__.Pessoa object at 0x7f7c8903d4c0>Neste caso não teria efeito mostrar o str para o cliente final
Podemos considerar que a função __str__ vai fornecer a forma mais legível possível de um objeto
Já o __repr__ é comumente utilizado por desenvolvedores para fazer o debug da aplicação, onde podem receber mais informações sobre um objeto no prompt
Conclusão
Neste artigo vimos a diferença entre __str__ e __repr__
A função str serve para exibir os resultados de uma classe para os clientes finais
Já com o repr nós podemos obter outros dados de uma classe, que não são úteis aos usuários do sistema
Confira também nosso catálogo de cursos gratuitos, com aulas semanais no YouTube
Formações
Formação Vibe Coding
Do Prompt ao Produto: Crie Software Real com IA
- 473 aulas
- 20 projetos
- 39h 26min
Blog | Mais populares

As diferenças de var, let e const

Como fazer redirecionamento com PHP
Neste artigo você vai aprender a como fazer redirecionamento com PHP, utilizaremos abordagens fáceis de entender e de aplicar Fala programador(a), beleza? Bora aprender mais […]

Checklist de segurança n8n VPS pública: guia essencial para proteger sua instalação
Checklist de segurança n8n VPS pública: guia essencial para proteger sua instalação A popularidade da automação de processos com o n8n está em alta, principalmente […]

