Solucionado (ver solução)
Solucionado
(ver solução)
2
respostas

Métodos especiais (resolução)

class Musica:
    lista_de_musicas = []
    
    def __init__(self, nome, artista, duraçao):
        self.nome = nome
        self.artista =artista
        self.duraçao = duraçao
        Musica.lista_de_musicas.append(self)

    def listar_musicas():
        for musica in Musica.lista_de_musicas:
            print(f'{musica.nome} | {musica.artista} | {musica.duraçao}')

musica_mourning_palace = Musica('Mourning Palace', 'Dimmu Borgir', 313)
musica_retrocesso = Musica('Retrocesso', 'Ratos de Porão', 93)

Musica.listar_musicas()
2 respostas
solução!

Boa tarde, Felipe! Tudo bem com você?

Gostei muito do seu código. É excelente ver você usando listas para armazenar instâncias de objetos. Continue colocando em prática o que está aprendendo.

Gostaria de aproveitar a oportunidade e deixar uma dica de boas práticas de codificação em Python. Por convenção no momento da nomeação de atributos, classes, métodos, ou nomes de variáveis, não utilizarmos o cedilha (ç) ou acentuação, assim, o atributo duraçao é recomendado que seja duracao.

Para conhecer um pouco mais sobre os padrões das nomenclaturas usadas em Python recomendo a leitura do seguinte artigo, que irá abordar com mais detalhes sobre os outros padrões de nomenclaturas e onde são aplicados:

Espero ter ajudado. Conte com o apoio do Fórum na sua jornada. Fico à disposição. Abraços e bons estudos!

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

Obrigado pela supervisão e dica, Rafael! Vou ler o artigo recomendado