no resultado, sempre printa para ambos (prato e bebida) Tamanho e nao Descricao e Tamanho
@property
def exibir_cardapio(self):
print(f'Cardapio do restaurante {self._nome}')
for i, item in enumerate(self._cardapio, start=1):
if hasattr(item, 'tamanho'):
msg_bebida = f'{i}. Nome: {item._nome} | Preço: {
item._preco} | Tamanho: {item.tamanho}'
print(msg_bebida)
else:
msg_prato = f'{i}. Nome: {item._nome} | Preço: {
item._preco} | Descricao: {item.descricao}'
print(msg_prato)
class Bebida(ItemCardapio):
def __init__(self, nome, preco, tamanho):
super().__init__(nome, preco)
self.tamanho = tamanho
def __str__(self):
return self._nome
class Prato(ItemCardapio):
def __init__(self, nome, preco, descricao):
super().__init__(nome, preco)
self.descricao = descricao
def __str__(self):
return self._nome ```
resultado:
// 1. Nome: suco | Preço: 2.0 | Tamanho: grande
// 2. Nome: pao | Preço: 5.0 | Tamanho: melhor