Solucionado (ver solução)
Solucionado
(ver solução)
1
resposta

Método __getitem__

Boas pessoal,

Após adicionar o método __getitem__, não consigo imprimir os programas sem passar o método listagem, .

class PlayList

class PlayList(list):
    def __init__(self, nome, programas):
        self.nome = nome
        self._programas = programas

    def __getitem__(self, item):
        return self._programas[item]

    @property
    def listagem(self):
        return self._programas

    @property
    def tamanho(self):
        return len(self._programas)

Imprimindo

lista_de_filmes_e_series = [vingadores, blacklista,carara]
play_list_sabados = PlayList('Sábados',lista_de_filmes_e_series)

print(f'tamanho da PlayListe: {len(play_list_sabados)}')

for programa in play_list_sabados:
    print(programa)
1 resposta
solução!

É porque você está extendendo o list. Tente criar a classe dessa forma:

class PlayList:

Quer mergulhar em tecnologia e aprendizagem?

Receba a newsletter que o nosso CEO escreve pessoalmente, com insights do mercado de trabalho, ciência e desenvolvimento de software