1
resposta

Metodo para mostrar o valor descontado formatado no cardapio

Bebida.py

from modelos.cardapio.item_cardapio import Itemcardapio

class Bebida(Itemcardapio):
    def __init__(self, nome,preco,tamanho):
     super().__init__(nome,preco)
     self.tamanho = tamanho
    
    def aplicar_desconto(self):
        self._preco -= (self._preco * 0.08)
        self.desconto = self._preco

Prato.py

from modelos.cardapio.item_cardapio import Itemcardapio

class Prato(Itemcardapio):
    def __init__(self, nome,preco,descricao):
     super().__init__(nome,preco)
     self.descricao = descricao

    def aplicar_desconto(self):
        self._preco -= (self._preco * 0.08)
        self.desconto = self._preco

Restaurante.py

    @property
    def exibir_cardapio(self):
        print(f'Cardápio do restaurante {self._nome}\n')
        for i, item in enumerate(self._cardapio, start=1):
            if hasattr(item, 'descricao'):
                mensagem_prato = (
                    f'{i}. Nome: {item._nome} | '
                    f'Preço: R${item._preco:.2f} | '
                    f'Descrição: {item.descricao} | '
                    f'Desconto R$: {item.desconto} '
                )
                print(mensagem_prato)
            else:
                mensagem_bebida = (
                    f'{i}. Nome: {item._nome} | '
                    f'Preço: R${item._preco:.2f} | '
                    f'Desconto R$: {item.desconto} '
                )
            
                print(mensagem_bebida)

Saida:

1 resposta

Olá amigo.
Seu projeto já está tomando forma.
O Ifood que se cuide!
Obrigado por compartilhar.
Bons estudos.