Ola, quando utilizo o código abaixo estou tendo problema. Acredito que seja por alguma configuração entre match and case. Consegue me ajudar?
import os
def exibir_nome_do_programa():
print ('Sabor Express\n')
def exibir_opcoes():
print('1. Cadastrar Restaurante')
print('2. Listar Restaurante')
print('3. Ativar Restaurante')
print('4. Sair\n')
def finalizar_app():
os.system('cls')
print('Finalizando o app')
def opcao_invalida():
print('Opção Inválida! \n')
input('Digite uma tecla para voltar ao menu principal')
main()
def escolher_opcao():
try:
opcao_escolhida =int(input('Escolha uma opção: '))
match opcao_escolhida:
case 1: print ('Cadastrar Restaurante')
case 2: print ('Listar Restaurante')
case 3: print ('Ativar Restaurante')
case 4: finalizar_app()
case _: opcao_invalida()
except:
opcao_invalida()
def main():
os.system('cls')
exibir_nome_do_programa()
exibir_opcoes()
escolher_opcao()
opcao_invalida()
if __name__ == '__main__':
main()
Por exemplo, quando escolho o 2, eu recebo esse retorno na mensagem:
Escolha uma opção: 2 Listar Restaurante Opção Inválida!
Porque ele também mostra o resultado da função de código inválida? Aguardo o retorno.