3
respostas

Ao cadastrar novo restaurante, o mesmo não aparece na lista.

import os

restaurantes = ['Pizza', 'Churrasco']

def exibir_nome_do_programa():
    print('''
░██████╗░█████╗░██████╗░░█████╗░██████╗░  ███████╗██╗░░██╗██████╗░██████╗░███████╗░██████╗░██████╗
██╔════╝██╔══██╗██╔══██╗██╔══██╗██╔══██╗  ██╔════╝╚██╗██╔╝██╔══██╗██╔══██╗██╔════╝██╔════╝██╔════╝
╚█████╗░███████║██████╦╝██║░░██║██████╔╝  █████╗░░░╚███╔╝░██████╔╝██████╔╝█████╗░░╚█████╗░╚█████╗░
░╚═══██╗██╔══██║██╔══██╗██║░░██║██╔══██╗  ██╔══╝░░░██╔██╗░██╔═══╝░██╔══██╗██╔══╝░░░╚═══██╗░╚═══██╗
██████╔╝██║░░██║██████╦╝╚█████╔╝██║░░██║  ███████╗██╔╝╚██╗██║░░░░░██║░░██║███████╗██████╔╝██████╔╝
╚═════╝░╚═╝░░╚═╝╚═════╝░░╚════╝░╚═╝░░╚═╝  ╚══════╝╚═╝░░╚═╝╚═╝░░░░░╚═╝░░╚═╝╚══════╝╚═════╝░╚═════╝░
      
      ''')

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('Finaluzando o App\n')

def opcao_invalida():
    print('Opção Inválida!\n')
    input('Digite uma tecla para voltar ao menu principal.')
    main()

def cadastrar_novo_restaurante():
    os.system('cls')
    print('Cadastro de novos restaurantes.\n')
    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('\nDigite uma tecla para voltar ao menu pricipal.')
    main()

def listar_restaurantes():
    os.system('cls')
    print('Listando os Restaurantes\n')

    for restaurante in restaurantes:
        print(f'.{restaurante}')

    input('\nDigite uma tecla para voltar ao menu pricipal.')
    main()

def escolher_opcao():
    try:
        opcao_escollhida = int(input('Escolha uma opção: '))

        if opcao_escollhida == 1:
            print('cadastrar restaurante')
            cadastrar_novo_restaurante()
        elif opcao_escollhida == 2:
            listar_restaurantes()
        elif opcao_escollhida == 3: 
            print('Ativar restaurante')
        elif opcao_escollhida == 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()

Ao escolher a opção 2, apresenta a lista Pizza e Churrasco. Porém ao cadastrar novo restaurante, apresenta a mensagem: "opção inválida"

3 respostas

Bom dia João! Tudo bem com você?

Executei o seu código, realizando o cadastro de um novo restaurante e logo após acessando o menu para listar os restaurantes e o restaurante cadastrado foi exibido normalmente, sem apresentar a mensagem "opção inválida". No GIF abaixo apresento a execução e teste do seu código:

GIF apresentando a execução do código do estudante

Peço que realize uma nova tentativa de execução do seu código, copie o código que você enviou no fórum, cole no arquivo python do seu projeto, salve o arquivo e execute-o novamente e verifique se obterá êxito na execução.

Espero ter ajudado. Conte com o apoio do Fórum na sua jornada. Fico à disposição. Abraços e bons estudos!

Caso este post tenha lhe ajudado, por favor, marcar como solucionado

Muito obrigado pela atenção. Creio que possa ter ocorrido um erro ao salvar, ou eu mesmo não teria salvo logo após alterar o código. Mas até então agradeço pela atenção.

Oiii João.

Fico feliz em saber que o código funcionou corretamente. Caso no decorrer dos estudos surjam novas dúvidas, basta criar uma nova postagem no fórum.

Abraços e bons estudos!