2
respostas

Resolução do Módulo

class Musica:
    musicas = []
    def __init__(self, nome = '', artista = '', duracao = 0):
            self.nome = nome
            self.artista = artista
            self.duracao = duracao
            Musica.musicas.append(self)
            
    def __str__(self):   
        return f'{self.nome}, {self.artista}, {self.duracao}' 
    
    @classmethod
    def listar_musica(cls):
        for musica in Musica.musicas:
            print(f'{musica.nome} | {musica.artista} | {musica.duracao}')   
musica1 = Musica('Deus dos deuses', 'Lauriete', '324')
musica2 = Musica('Deus da minha vida', 'Thalles Roberto','321')
musica3 = Musica('Estou contigo', 'Shirley Carvalhaes','333')       
            
Musica.listar_musica()
2 respostas

Fazendo um novo teste, consegui identificar que o @classmethod passado pela função def listar_musica(cls): Não tem necessidade de ser implementado, bastando apenas passar a função "def listar_musica():" com um loop nessa função.

Segue o trecho de código abaixo:

class Musica:
    musicas = []
    def __init__(self, nome = '', artista = '', duracao = 0):
            self.nome = nome
            self.artista = artista
            self.duracao = duracao
            Musica.musicas.append(self)
            
    def __str__(self):   
        return f'{self.nome}, {self.artista}, {self.duracao}' 
    

    def listar_musica():
        for musica in Musica.musicas:
            print(f'{musica.nome} | {musica.artista} | {musica.duracao}')   
musica1 = Musica('Deus dos deuses', 'Lauriete', '324')
musica2 = Musica('Deus da minha vida', 'Thalles Roberto','321')
musica3 = Musica('Estou contigo', 'Shirley Carvalhaes','333')       
            
Musica.listar_musica()


        
        

Oie, Igor! Tudo bem?

Agradeço por compartilhar com a comunidade a sua solução! É muito legal acompanhar a sua dedicação, continue assim e, caso tenha dúvidas, conte conosco.

Abraço e até mais!