Não entendi o que esta acontecendo aqui, o resultado esta como deveria. Não esta faltando nenhuma palavra... Mas, mesmo assim, o VS dá um erro.
Cardápio do Restaurante Praça
- Nome: Suco de Melancia | Preço : R$16.99 | Tamanho: Grande
- Nome: Pizza da Casa | Preço : R$45.0 | Descrição: Melhor Pizza do Brasil e do Mundo
Traceback (most recent call last): File "c:\Users\T.I\Downloads\Python\POO_Sabor_Express.py", line 20, in main() File "c:\Users\T.I\Downloads\Python\POO_Sabor_Express.py", line 17, in main restaurante_praça.exibir_cardapio() TypeError: 'NoneType' object is not callable
Na linha 17 só tem isso:
def main():
restaurante_praça.exibir_cardapio()
O mais engraçado que o código só esta dando erro quando eu adiciono o @property. Se eu retirar essa parte, o VS não acusa nenhum erro:
@property
def exibir_cardapio(self):
print(f'Cardapio 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} | Preço : R${item._preco} | Descrição: {item.descricao}'
print (mensagem_prato)
else:
mensagem_bebida = f'{i}. Nome: {item._nome} | Preço : R${item._preco} | Tamanho: {item._tamanho}'
print (mensagem_bebida)