Acabei de assistir a aula sobre "Try/Except" e reparei que o except funciona apenas quando primeiro eu tento um número diferente do 1 - 4 e depois eu tento uma letra, por exemplo a "A". Toda vez que eu inicio o programa já colocando a uma letra no input ao invés de um número que não está dentro das opções, o programa para de imediato. Gostaria de entender se há algum motivo para isso. Muito obrigado desde já Segue o código abaixo:
import os
def exibir_nome_programa():
print('''
░██████╗░█████╗░██████╗░░█████╗░██████╗░ ███████╗██╗░░██╗██████╗░██████╗░███████╗░██████╗░██████╗
██╔════╝██╔══██╗██╔══██╗██╔══██╗██╔══██╗ ██╔════╝╚██╗██╔╝██╔══██╗██╔══██╗██╔════╝██╔════╝██╔════╝
╚█████╗░███████║██████╦╝██║░░██║██████╔╝ █████╗░░░╚███╔╝░██████╔╝██████╔╝█████╗░░╚█████╗░╚█████╗░
░╚═══██╗██╔══██║██╔══██╗██║░░██║██╔══██╗ ██╔══╝░░░██╔██╗░██╔═══╝░██╔══██╗██╔══╝░░░╚═══██╗░╚═══██╗
██████╔╝██║░░██║██████╦╝╚█████╔╝██║░░██║ ███████╗██╔╝╚██╗██║░░░░░██║░░██║███████╗██████╔╝██████╔╝
╚═════╝░╚═╝░░╚═╝╚═════╝░░╚════╝░╚═╝░░╚═╝ ╚══════╝╚═╝░░╚═╝╚═╝░░░░░╚═╝░░╚═╝╚══════╝╚═════╝░╚═════╝░
''')
def exibir_opcoes():
print('1. Cadastrar Restaurantes')
print('2. Listar Restaurantes')
print('3. Ativar Restaurantes')
print('4. Sair\n')
def finalizar_app():
os.system('cls')
print('Encerrando o app.\n')
def opcao_invalida():
print('Opção inválida\n')
input('Digite uma tecla para voltar ao menu principal: ')
main()
def escolher_opcao():
opçao_escolhida = int(input('Escolha uma opção: '))
try:
if opçao_escolhida == 1:
print('Cadastrar restaurantes')
elif opçao_escolhida == 2:
print('Listar Restaurantes')
elif opçao_escolhida == 3:
print('Ativar Restaurantes')
elif opçao_escolhida == 4:
finalizar_app()
else:
opcao_invalida()
except:
opcao_invalida()
def main():
os.system('cls')
exibir_nome_programa()
exibir_opcoes()
escolher_opcao()
if __name__ == '__main__':
main()