o codigo completo esta aqui:
esta dando 2 erros no meu código (1° erro é que assim que eu cadastro o novo restaurante e depois tento lista-lo, cai em opção invalida) (2° erro é quando escolho a opção 3 de alternar restaurante ele tambem cai em opção invalida). Alguem sabe o porque de esta caindo em opção invalida?
obs: quando eu inicio o programa e peço pra ele listar, ele lista sem erro nenhum. a partir do momento que eu cadastro um novo restaurante, ele nao lista mais e cai em opção invalida
obs: quando eu escolho a opção 3, ele ja cai direto no opção invalida, sem aparecer nada em relacão a função alternar restaurante
import os
restaurantes = [{'Nome': 'Habibs', 'categoria':'Árabe','ativo': False},
{'Nome': 'Burguer King', 'categoria':'Hamburguer','ativo': True},
{'Nome': 'Jacaré Lanches', 'categoria':'Lanches Naturais','ativo': False}]
def exibir_nome_do_programa():
print(""" ***tive que tirar a fonte por conta do limite de caracteries****
""")
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\n')
def voltar_ao_menu_principal():
input('\nDigite uma tecla para voltar ao menu principal: ')
main()
def opcao_invalida():
exibir_subtitulos('Opção inválida \n')
voltar_ao_menu_principal()
def exibir_subtitulos(texto):
os.system('cls')
print(texto)
def cadastrar_novo_restaurante():
exibir_subtitulos('cadastro de novos restaurantes \n')
nome_restaurante = input("Digite o nome do restaurante que deseja cadastrar: ")
categoria = input(f'Digite o nome da categoria do restaurante {nome_restaurante}: ')
dados_restaurante = {'nome':nome_restaurante, 'categoria':categoria, 'ativo':False}
restaurantes.append(dados_restaurante)
print(f'O restaurante {nome_restaurante} foi cadastrado com sucesso!\n')
voltar_ao_menu_principal()
def listar_restaurantes():
exibir_subtitulos('Listando os Restaurantes!\n')
for restaurante in restaurantes:
nome_restaurante = restaurante['Nome']
categoria = restaurante['categoria']
ativo = restaurante['ativo']
print(f'.{nome_restaurante} | {categoria} | {ativo}')
voltar_ao_menu_principal()
def alternar_estado_restaurante(restaurantes): # a função alternar_estado_restaurante recebe uma lista de restaurantes como argumento
exibir_subtitulos('Ativando Restaurante')
nome_restaurante = input("Digite o Nome do Restaurante que deseja Ativar: ")
restaurante_encontrado = False
for restaurante in restaurantes():
if nome_restaurante == restaurante_encontrado:
restaurante_encontrado = True
def escolher_opcoes():
try:
opcao_escolhida = int(input("Escolha uma opção: "))
if opcao_escolhida == 1:
cadastrar_novo_restaurante()
elif opcao_escolhida == 2:
listar_restaurantes()
elif opcao_escolhida == 3:
alternar_estado_restaurante()
elif opcao_escolhida == 4:
finalizar_app()
else:
opcao_invalida()
except:
opcao_invalida()