Ola
Meu codigo retorna a referencia da memoria... devo ter deixado alguma coisa passar :/
class Programa:
def __init__(self, nome, ano):
self._nome = nome.title()
self.ano = ano
self._likes = 0
@property
def nome(self):
return self._nome
@property
def likes(self):
return self._likes
@nome.setter
def nome(self, novo_nome):
self._nome = novo_nome.title()
def dar_likes(self):
self._likes += 1
def __str__(self):
return f'Nome: {self._nome} - Ano: {self.ano} - Likes: {self._likes}'
class Filmes (Programa):
def __init__(self, nome, ano, duracao):
super().__init__(nome, ano)
self.duracao = duracao
def __str__(self):
return f'Nome: {self._nome} - Ano: {self.ano} - {self.duracao} min - Likes: {self._likes}'
class Series(Programa):
def __init__(self, nome, ano, temporada):
super().__init__(nome, ano)
self.temporada = temporada
def __str__(self):
return f'Nome: {self._nome} - Ano: {self.ano} - {self.temporada} Temporada - Likes: {self._likes}'
vingadores = Filme('vingadores', 2018, 160)
atlanta = Serie('atlanta', 2018, 2)
filmes_e_series = [vingadores, atlanta]
for programa in filmes_e_series:
print(programa)
A saída é:
<__main__.Filme object at 0x7fd5521f7dd8>
<__main__.Serie object at 0x7fd5521f7a58>
Pq?
Obrigada!