Pessoal, bom dia!
Estou com problema no main na linha 38, o que está de errado?
Pessoal, bom dia!
Estou com problema no main na linha 38, o que está de errado?
Olá rodrigo, espero que esteja bem
Eu vi seu código, notei duas coisas, parece que o código abaixo da função cadastrar_novo_restaurante está fora do aninhamento.
O python trabalha com aninhamento então esse código não está dentro da função mais sim sendo executado no programa principal.
Eu adaptei o programa que você mostrou, veja se o código abaixo seria o que você pretendia criar:
restaurantes = []
def finalizar_app():
print("\nFinalizando o app...\n")
def cadastrar_novo_restaurante():
print("\nCadastro de novos restaurantes")
nome_do_restaurante = input("Digite o nome do restaurante que deseja cadastrar: ")
restaurantes.append(nome_do_restaurante)
print(f'O restaurante "{nome_do_restaurante}" foi cadastrado com sucesso!')
input("Digite uma tecla para voltar ao menu...")
def opcao_invalida():
print("\nOpção inválida!")
input("Digite uma tecla para voltar ao menu...")
main()
def exibir_opcoes():
print("\nBem-vindo ao Sabores Express")
print("1 - Cadastrar restaurante")
print("2 - Listar restaurantes")
print("3 - Sair\n")
def escolher_opcao():
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:
finalizar_app()
else:
opcao_invalida()
except ValueError:
print("\nErro: Digite apenas números!")
escolher_opcao()
def listar_restaurantes():
print("\nLista de restaurantes cadastrados:")
for restaurante in restaurantes:
print(f"- {restaurante}")
input("\nDigite uma tecla para voltar ao menu...")
def main():
while True:
exibir_opcoes()
escolher_opcao()
main()
Outro ponto que notei é que você parece estar chamando o main(), não sei se a inteção seria chamar ele dentro do cadastrar_novo_restaurante., mas ele está acusando.