2
respostas

[Projeto] Calculo das notas

Pensei como é n ifood, onde avaliamos até 10, mas só mostra ate 5

@property def media_avaliacao(self): if not self._avaliacao: return "-" soma_das_notas = sum(avaliacao._nota for avaliacao in self._avaliacao) quatidade_de_notas = len(self._avaliacao) media = soma_das_notas/quatidade_de_notas media_limitada = round(media/2, 1) return media_limitada

    RETORNA
    
    @property
def media_avaliacao(self):
    if not self._avaliacao:
        return "-"
    soma_das_notas = sum(avaliacao._nota for avaliacao in self._avaliacao)
    quatidade_de_notas = len(self._avaliacao)
    media = soma_das_notas/quatidade_de_notas
    media_limitada = round(media/2, 1)
    return media_limitada
    
    Nome do restaurante       | Categoria                 | Avaliação                 | Status

Praça | GOURMET | 3.8

2 respostas

Oi Flávia, tudo bem?

Agradeço por compartilhar o código! Parabéns por aplicar os conceitos de Orientação a Objetos em Python. A limitação da média de avaliação é uma abordagem interessante, semelhante à prática de alguns serviços de avaliação.

Continue assim, consolidando seus conhecimentos e explorando novos desafios. Se tiver mais projetos ou dúvidas, não hesite em compartilhar. Ótimo trabalho!

Um abraço e bons estudos.

Você pode economizar até mais linhas fazendo a divisão por 2 na mesma linha da média

 def media_notas(self):
        if not self._avaliacao:
            return '-'
        soma_notas = sum(avaliacao._nota for avaliacao in self._avaliacao)
        quantidade_notas = len(self._avaliacao)
        media = round((soma_notas / quantidade_notas) / 2, 1)
        return media