Dessa vez meu código não deu erro, mas as listagens não estão aparecendo uma embaixo da outra e sim apenas{'nome': 'Cantina','categoria': 'Italiano', 'Ativo':False}]
import os
restaurantes = [{'nome': 'Praça','categoria': 'Japonesa', 'Ativo':False},
{'nome': 'Pizza Suprema', 'categoria': 'Italiana', 'Ativo': True},
{'nome': 'Cantina','categoria': 'Italiano', 'Ativo':False}]
#Quando temos {chaves} dentro [listas] estamos criando dicionários.
# Dicionários irá armenazar os dados cadastrados e irá aparecer no menu listar restaurante.
#restaurantes [] é uma lista.#
# Lista ármazena todos os dados que são cadastrados no programa.#
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():
exibir_subtitulo('Finalizar app')
#def é o como se declara um função no python.
#Função é um bloco de código, que vai realizar uma determinada ação.
def voltar_ao_menu_principal():
input('\nDigite uma tecla para voltar ao menu: ')
main()
def opcao_invalida():
print('Opção invalida!\n')
voltar_ao_menu_principal()
def exibir_subtitulo(texto):
os.system('cls')
print(texto)
print()
def cadastrar_novo_restaurante():
exibir_subtitulo('Cadastro de novos restaurantes')
nome_do_restaurante = input('Digite o nome do restaurante que deseja cadastrar: ')
restaurantes.append(nome_do_restaurante)
#append é uma função que armazenará os nomes dos restaurantes na lista.#
#(nome_do_restaurante) é um argumento necessário para que os dados sejam armazenados na lista.#
print(f'O restaurante {nome_do_restaurante } foi cadastrado com sucesso!')
voltar_ao_menu_principal()
def listar_restaurantes():
exibir_subtitulo('Listando restaurantes')
#para que seja armazenado os dados e apareça na lista quando selecionamos o menu listar restaurante,
#devemos fazer como no exemplo: nome_restaurante = restaurante['nome'],
#onde['nome'] é o argumento para que mostre o nome do restaurante.
#['categoria'] aparecerá categoria e asiim para os demais dados.
for restaurante in restaurantes:
nome_restaurante = restaurante['nome']
categoria = restaurante['categoria']
Ativo = restaurante['Ativo']
print(f'-{nome_restaurante}|{categoria}|{Ativo}')
voltar_ao_menu_principal()
#for restaurante in restaurante significa que cada restaurante cadastrado,
# irá aparecer na lista#
def escolher_opcao():
try:
opcao_escolhida =int (input('Escolha uma opção: '))
print(f'Você escolheu a opção {opcao_escolhida}')
# int, coloca-se o int porque o padrão da linguagem python,#
# os números são strings e colocando o int a linguagem,
# irá converter o número para inteiro.
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()
#opcao_escolhida é uma variavel que irá armazenar uma opcão escolhida no menu#
def main():
os.system('cls')
exibir_nome_do_programa()
exibir_opcoes()
escolher_opcao()
if __name__ == '__main__':
main()