avaliacao.py
class Avaliacao:
    def __init__(self, cliente, nota):
        self._cliente = cliente
        self._nota = nota
restaurante.py:
from modelos.avaliacao import Avaliacao
class Restaurante:
    restaurantes = []
    def __init__(self, nome, categoria): # Construtor com dois parâmetros
        self._nome = nome.title()  # Formata o nome do restaurante para primeira letra maiúscula
        self.categoria = categoria.upper()  # Formata a categoria para maiúsculas
        self._ativo = False   # Atributo privado para controle de ativo quando adiciona # "_"
        self._avaliacao = []
        Restaurante.restaurantes.append(self)
    def __str__(self):
        return f'Restaurante: {self._nome}, Categoria: {self.categoria}, Ativo: {self.ativo}'
    @classmethod
    def listar_restaurantes(cls):
        print(f'{"Nome":<25} | {"Categoria":<25} | {"Avaliação":<25} | {"Ativo"}')
        for restaurante in cls.restaurantes:
            print(f'{restaurante._nome:<25} | {restaurante.categoria:<25} | {restaurante.media_avaliacoes:<25} | {restaurante.ativo}')
        
        
    @property
    def ativo(self):
        return '✔️' if self._ativo else '❌'
    def alternar_estado(self):
        self._ativo = not self._ativo
        print(f'O restaurante {self._nome} agora está {"ativo" if self._ativo else "inativo"}.')
    def receber_avaliacao(self, cliente, nota):
        avaliacao = Avaliacao(cliente, nota)
        self._avaliacao.append(avaliacao)
    @property
    def media_avaliacoes(self):
        if not self._avaliacao:
            return 0
        soma_das_notas = sum(avaliacao._nota for avaliacao in self._avaliacao)
        media = round(soma_das_notas / len(self._avaliacao), 2)
        return media
app.py
from modelos.restaurante import Restaurante
restaurante_praca = Restaurante('praça', 'Gourmet')
restaurante_praca.receber_avaliacao('Gui', 10)
restaurante_praca.receber_avaliacao('Lais', 8)
restaurante_praca.receber_avaliacao('Emy', 2)
def main():
    Restaurante.listar_restaurantes()
if __name__ == '__main__':
    main()
 
             
             Conte com o apoio da comunidade Alura na sua jornada. Abraços e bons estudos!
 Conte com o apoio da comunidade Alura na sua jornada. Abraços e bons estudos!