2
respostas

Melhoria no código do método __str__ removendo duplicação

No método __str__, o código apresentado está duplicado de certa forma, repetindo as informações de nome, ano e likes em cada subclasse. O melhor seria deixar esses atributos a cargo da superclasse Programa e nas subclasses Filme e Serie adicionar os atributos específicos. O código ficaria assim:

Programa

def __str__(self):
    return f"{self.nome} - {self.ano} - {self._likes} likes"

Filme

def __str__(self):
    return f"{super().__str__()} - {self.duracao}"

Serie

def __str__(self):
    return f"{super().__str__()} - {self.temporadas}"
2 respostas

Oiii Dyrson, tudo bem?

Ótima observação. No caso do curso, creio que o professor utilizou uma sintaxe mais verbosa a cargo de didática. Mas, podemos sim aproveitar da herança e pedir para que a classe mãe imprima os atributos em comum, é inclusive o mais comum de ser ver. Sua melhoria é muito pertinente :)

Qualquer dúvida é só falar, estou a disposição. Abraços e bons estudos!

Muito obrigado Dyrson. Me ajudou muito