Segue o código:
class Programa:
def __init__(self, nome, ano):
self._nome = nome.title()
self.ano = ano
self._likes = 0
@property
def likes(self):
return self._likes
def dar_likes(self):
self._likes += 1
@property
def nome(self):
return self._nome
@nome.setter
def nome(self, novo_nome):
self._nome = novo_nome.title()
class Filme(Programa):
def __init__(self, nome, ano, duracao):
super().__init__(nome, ano)
self.duracao = duracao
class Serie(Programa):
def __init__(self, nome, ano, temporadas):
super().__init__(nome, ano)
self.temporadas = temporadas
vingadores = Filme('vingadores - guerra infinita', 2018, 160)
vingadores.dar_likes()
vingadores.dar_likes()
vingadores.dar_likes()
print(f'Nome: {vingadores.nome} - Ano: {vingadores.ano} - Duração: {vingadores.duracao} - Likes: {vingadores.likes}')
atlanta = Serie('atlanta', 2018, 2)
atlanta.dar_likes()
atlanta.dar_likes()
print(f'Nome: {atlanta.nome} - Ano: {atlanta.ano}' f' - Temporadas: {atlanta.temporadas} - Likes: {atlanta.likes}')
braking_bad = Serie('braking bad', 2008, 5)
braking_bad.dar_likes()
braking_bad.dar_likes()
braking_bad.dar_likes()
braking_bad.dar_likes()
braking_bad.dar_likes()
print(f'Nome: {braking_bad.nome} - Ano: {braking_bad.ano} - Temporadas: {braking_bad.temporadas} - Likes: {braking_bad.likes}')