⚡ 60 segundos
classes
Métodos mágicos: __len__, __str__ e __contains__
Métodos dunder permitem que suas classes funcionem com len(), print(), in e outros operadores do Python.
dunder.py
class Playlist:
def __init__(self, nome, musicas):
self.nome = nome
self.musicas = musicas
def __len__(self):
return len(self.musicas)
def __str__(self):
return f'{self.nome} ({len(self)} musicas)'
def __contains__(self, musica):
return musica in self.musicas
p = Playlist('Rock', ['Song1', 'Song2'])
print(len(p)) # 2
print(p) # Rock (2 musicas)
print('Song1' in p) # True