# Eu preferi separar as classes por arquivos.
# Criando uma classe mãe
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()
# Classe filha
# Classe Filme
from programa import Programa
class Filme(Programa):
def __init__(self,nome,ano,duracao):
super().__init__(nome,ano)
self.duracao = duracao
vingadores = Filme('vingadores - guerra infinita', 2018,160)
vingadores.dar_like()
vingadores.dar_like()
print(f"Nome: {vingadores.nome} Likes: {vingadores.likes}")
# Classe programa
from programa import Programa
class Serie(Programa):
def __init__(self,nome,ano,temporadas):
super().__init__(nome,ano)
self.temporadas =temporadas
atlanta = Serie('atlanta', 2018, 2)
atlanta.dar_like()
atlanta.dar_like()
print(f"Nome: {atlanta.nome} Likes: {atlanta.likes}")
[Running]
Nome: Vingadores - Guerra Infinita Likes: 2
[Done] exited with code=0 in 0.524 seconds
[Running]
Nome: Atlanta Likes: 2
[Done] exited with code=0 in 0.348 seconds