Vi que usando pass, continua funcionando perfeitamente, pois é reescrita, mas qual a vantagem de nao deixar a def str(self) vazia?
def __str__(self):
pass
Vi que usando pass, continua funcionando perfeitamente, pois é reescrita, mas qual a vantagem de nao deixar a def str(self) vazia?
def __str__(self):
pass
Não tenho certeza se entendi sua dúvida. A vantagem de não deixar as __str__
vazia, ou em outras palavras, de implantá-la, é que vc pode imprimir a representação de objetos como você desejar.
class Pessoa:
def __init__(self, nome, idade):
self.nome = nome
self.idade = idade
pessoa = Pessoa("Joao", 12)
print(pessoa)
Retorna uma informação da classe e endereço na memória. Não muito útil na maioria dos casos
class Pessoa:
def __init__(self, nome, idade):
self.nome = nome
self.idade = idade
def __str__(self):
return f"{self.nome} - {self.idade}"
pessoa = Pessoa("Joao", 12)
print(pessoa)
Retorna "Joao - 12"