class Programa:
def __init__(self,nome,ano):
self._nome = nome.title()
self.ano =ano
self._likes = 0
@property
def likes(self):
return self._likes
@property
def nome(self):
return self._nome
def dar_like(self):
self._likes += 1
@nome.setter
def nome(self,novo_nome):
self._nome = novo_nome.title()
def __str__(self):
return f'{self._nome} - {self.ano} - {self._likes} Likes'
class Filme(Programa):
def __init__(self,nome,ano,duracao):
super().__init__(nome,ano)
self.duracao = duracao
def __str__(self):
return f'Nome: {self._nome} - {self.duracao} min - Likes: {self._likes}'
class Serie(Programa):
def __init__(self,nome,ano,temporadas):
super().__init__(nome,ano)
self.temporadas =temporadas
def __str__(self):
return f'Nome: {self._nome} - {self.temporadas} temporadas - Likes: {self._likes}'
vingadores = Filme('vingadores - guerra infinita', 2018, 160)
atlanta = Serie('atlanta', 2018, 2)
vingadores.dar_like()
vingadores.dar_like()
vingadores.dar_like()
atlanta.dar_like()
atlanta.dar_like()
listinha = [atlanta, vingadores]
for programa in listinha:
print(f'Nome: {programa.nome} - Likes: {programa.likes}')
[Running]
Nome: Atlanta - Likes: 2
Nome: Vingadores - Guerra Infinita - Likes: 3
[Done] exited with code=0 in 0.407 seconds