Pessoal, o meu código está dando erro, está dando opção inválida independente da opção que escolho. Conferi com o gabarito disponibilizado e parece o mesmo, tentei rodar o meu e o disponibilizado, e ambos apareceram o mesmo erro. o IA Alura justifica que o erro está com try | except. Poderiam explicar melhor?
Segue o código:
import os
restaurantes = ['Pizza', 'cachorro quente', 'bolinha de queijo', 'milho']
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():
exibir_subtitulo('Finalizando o app')
def voltar_ao_menu_principal():
input('\nDigite uma tecla para voltar ao menu ')
main()
def opcao_invalida():
print('Opção Inválida! \n')
input('Digite uma tecla para voltar ao menu principal \n')
main()
def exibir_subtitulo():
os.system('cls')
print(texto)
print()
def cadastrar_restaurantes():
exibir_subtitulo('Cadastro de novos restaurantes \n')
nome_do_restaurante = input(' Digite o nome do restaurante que você gostaria de cadastrar:')
restaurantes.append(nome_do_restaurante)
print( f'O restaurante {nome_do_restaurante} foi cadastrado com sucesso')
input('Digite uma para voltar ao menu principal')
voltar_ao_menu_principal()
def listar_restaurantes():
exibir_subtitulo('Listando os restaurantes \n')
for restaurante in restaurantes:
print (f'.{restaurante}')
input('Digite uma tecla para voltar ao menu principal')
voltar_ao_menu_principal()
def escolher_opcao():
try:
opcao_escolhida = int(input('Escolha uma opção: '))
if opcao_escolhida == 1: cadastrar_restaurantes()
elif opcao_escolhida == 2:listar_restaurantes()
elif opcao_escolhida == 3: print ('Ativar Restaurante')
elif opcao_escolhida == 4: finalizar_app ()
else: opcao_invalida()
except:
opcao_invalida()
def main():
os.system('cls')
exibir_nome_do_programa()
exibir_opcoes()
escolher_opcao()
if __name__ == '__main__':
main()