No meu código, eu dei uma leve "melhorada" no método especial str e aproveitei para usar ele no método listar_restaurante(). Isso é uma prática ruim? Ou é interessante usar assim?
def __str__(self):
return f'{self.nome.ljust(20)} | {self.categoria.ljust(20)} | {('Ativado' if self.ativo else 'Desativado').ljust(20)}'
def listar_restaurantes():
for restaurante in Restaurante.restaurantes:
print(restaurante)