Olá, Roger! Tudo bem?
Gostei da sua construção da classe Musica
e instanciar objetos dela. No entanto, para seguir as boas práticas de programação orientada a objetos, seria interessante adicionar um método construtor (__init__
) à sua classe. Isso tornará a criação dos objetos mais organizada e eficiente. Vou mostrar um exemplo de como você pode fazer isso:
class Musica:
def __init__(self, nome, artista, genero, duracao):
self.nome = nome
self.artista = artista
self.genero = genero
self.duracao = duracao
# Instanciando os objetos com o método construtor
musica1 = Musica('Camisa 10', 'Turma do Pagode', 'Pagode', 3.00)
musica2 = Musica('Home', 'Michael Bublé', 'Pop', 3.57)
musica3 = Musica('Wonderwall', 'Oasis', 'Pop', 4.18)
# Criando a lista de músicas
lista_musicas = [vars(musica1), vars(musica2), vars(musica3)]
print(lista_musicas)
Com esse método construtor, você pode inicializar os atributos da classe diretamente ao criar os objetos, o que torna o código mais limpo e fácil de entender.
Bons estudos!