1
resposta

Construtor Instanciando Objetos: Fiz Assim - 06 Mão na massa: refatorando uma função

class Musica:
    playlist = []

    def __init__(self, nome, artista, duracao):
        self.nome = nome
        self.artista = artista
        self.duracao = duracao

        Musica.playlist.append(self)
    
    def __str__(self):
        return f'{self.nome}{self.artista}{self.duracao}'
    
    def listar_musicas():
        print('''____________________♫ ♫ ♫ ♫____________________
                Minha PLAYLIST
              ''')

        print(f'{'MÚSICA':<20}{'ARTISTA':<20}{'DURAÇÃO(s)':<20}') #imprime o título com alinhamento

        for musica in Musica.playlist:
            print(f'{musica.nome:<20} {musica.artista:<20} {musica.duracao:<10}')
        print('_______________________________________________')


musica_instancia1 = Musica('Beliver','Imagine Dragons',217)
musica_instancia2 = Musica('No Roots', 'Alice Merton', 237)
musica_instancia3 = Musica('Waka Waka', 'Shakira', 211)

Musica.listar_musicas()
1 resposta

Oi Shayne,

Parabéns pela sua solução para a atividade! 👍

Seu código está bem estruturado e cumpre o objetivo de criar uma playlist de músicas.

🎓 Para saber mais: Classes vs Instâncias em Python.

Continue praticando e explorando as possibilidades da orientação a objetos! 🤗