Solucionado (ver solução)
Solucionado
(ver solução)
1
resposta

Método listar_restaurante()

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)
1 resposta
solução!

Oi Josué,

Sua abordagem de utilizar o método __str__ dentro do listar_restaurantes() é uma prática interessante e eficiente! 👍

Ao fazer isso, você garante que a representação de string de cada restaurante seja consistente em toda a sua aplicação. Isso facilita a manutenção e evita a duplicação de código.

No seu caso, o método __str__ formata a saída de cada restaurante, e ao usar print(restaurante) dentro do listar_restaurantes(), o Python automaticamente chama o método __str__ do objeto, exibindo a representação formatada que você definiu.

Essa é uma maneira elegante de reutilizar a lógica de formatação e manter seu código mais limpo e organizado. 💪

Continue explorando essas possibilidades!

Para saber mais: Documentação oficial do Python sobre métodos especiais

A prática leva à perfeição! 💻