Solucionado (ver solução)
Solucionado
(ver solução)
1
resposta

Não aparece o nome da lista, aparece restaurante


import os

restaurantes = ['Pizza', 'Sushi']

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


def exibir_opcoes():
    print ('1.Cadastrar Restaurantes')
    print ('2.Listar Restaurantes')
    print ('3.Ativar Restaurantes')
    print ('4.Sair\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('Digite uma tecla para voltar ao menu principal')
    main()


def finalizar_app():
     os.system('cls')
     print('Finalizar o app\n')


def listar_restaurantes():
    os.system('cls')
    print('Listando Restaurantes\n')
    for restaurante in restaurantes:
        (f'.{restaurante}')
        
    input('\nDigite uma tecla para voltar ao menu principal')
    main()

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:
            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_opcoes()


if __name__ == '__main__':
     main()
1 resposta
solução!

Oi Maria, tudo bem?

Acredito que o problema esteja na forma como você está tentando imprimir os nomes dos restaurantes na função listar_restaurantes().

No seu código, você tem a seguinte linha:

(f'.{restaurante}')

No entanto, essa linha de código não tá fazendo nada, porque você não tá usando a função print() para exibir o valor da string formatada. Então, a forma correta de imprimir os nomes dos restaurantes seria:

print(f'.{restaurante}')

Assim, a função listar_restaurantes() corrigida ficaria dessa forma:

def listar_restaurantes():
    os.system('cls')
    print('Listando Restaurantes\n')
    for restaurante in restaurantes:
        print(f'.{restaurante}')
        
    input('\nDigite uma tecla para voltar ao menu principal')
    main()

Com essa correção, a função agora irá percorrer a lista de restaurantes e imprimir cada um deles na tela.

Espero ter ajudado.

Um abraço e bons estudos.