1
resposta

Usando módulo random e likes

from random import randint

class Programa:

    def __init__(self, nome, ano):
        self.nome = nome
        self.ano = ano
        self._n_likes = 0

    @property
    def nome(self):
        return self.__nome

    @property
    def n_likes(self):
        return self._n_likes

    @nome.setter
    def nome(self, nome):
        self.__nome = nome.title()

    def like(self):
        self._n_likes += 1

    def __str__(self):
        return f'{self.nome} ({self.ano}): {self.n_likes} likes'


class Filme(Programa):

    def __init__(self, nome, ano, duracao):
        super().__init__(nome, ano)
        self.duracao = duracao

    def __str__(self):
        return f'{self.nome} ({self.ano}) - {self.duracao} min: {self.n_likes} likes'


class Serie(Programa):

    def __init__(self, nome, ano, n_temporadas):
        super().__init__(nome, ano)
        self.n_temporadas = n_temporadas

    def __str__(self):
        return f'{self.nome} ({self.ano}) - {self.n_temporadas} temporadas: {self.n_likes} likes'


class Playlist:
    def __init__(self, nome, programas):
        self.nome = nome
        self.programas = programas

    def tamanho(self):
        return len(self.programas)


star_wars = Filme('Star Wars: A New Hope', 1977, 121)
svu = Serie('Law & Order: SVU', 1999, 23)
harry_potter = Filme('Harry Potter & The Deathly Hallows Pt 2', 2011, 130)
got = Serie('Game of Thrones', 2011, 8)

filmes_e_series = [star_wars, svu, harry_potter, got]
for programa in filmes_e_series:
    for _ in range(randint(1, 100)):
        programa.like()

playlist_weekend = Playlist('Fim de Semana', filmes_e_series)

for programa in playlist_weekend.programas:
    print(programa)

Para cada programa eu escolho um número aleatório de 1 a 100 e passo no range de um for interno. Aí para cada iteração desse for interno programa adiciona +1 like.

1 resposta

Oi, Paula! Tudo bem?

Mandou bem! Você encontrou uma forma de driblar o problema levantado.

Iremos ver mais formas de faze-lo ao decorrer do curso.

Continue praticando.

Até mais!

Caso este post tenha lhe ajudado, por favor, marcar como solucionado ✓.Bons Estudos!