1
resposta

Faça como eu fiz: estruturas de repetição e conjuntos

import os

restaurantes = ['Pizza', 'Sushi']

def exibir_nome_programa():
 print('''

░██████╗░█████╗░██████╗░░█████╗░██████╗░  ███████╗██╗░░██╗██████╗░██████╗░███████╗░██████╗░██████╗
██╔════╝██╔══██╗██╔══██╗██╔══██╗██╔══██╗  ██╔════╝╚██╗██╔╝██╔══██╗██╔══██╗██╔════╝██╔════╝██╔════╝
╚█████╗░███████║██████╦╝██║░░██║██████╔╝  █████╗░░░╚███╔╝░██████╔╝██████╔╝█████╗░░╚█████╗░╚█████╗░
░╚═══██╗██╔══██║██╔══██╗██║░░██║██╔══██╗  ██╔══╝░░░██╔██╗░██╔═══╝░██╔══██╗██╔══╝░░░╚═══██╗░╚═══██╗
██████╔╝██║░░██║██████╦╝╚█████╔╝██║░░██║  ███████╗██╔╝╚██╗██║░░░░░██║░░██║███████╗██████╔╝██████╔╝
╚═════╝░╚═╝░░╚═╝╚═════╝░░╚════╝░╚═╝░░╚═╝  ╚══════╝╚═╝░░╚═╝╚═╝░░░░░╚═╝░░╚═╝╚══════╝╚═════╝░╚═════╝░
      ''')

def exibir_opcoes():
 print('1.Castrar restaurante')
 print('2.Listar restaurante')
 print('3.Ativar restaurante')
 print('4.Sair')

def finalizar_app():   
    exibir_subtitulo('Finalizar app')

def voltar_menu_principal():
  input('Digite uma tecla para voltar ao menu inicial')
  main()

def exibir_subtitulo(texto):
  os.system('cls')
  print(texto)
  print()
  

def opcao_invalida():
   print('Opção inválida.\n')
   voltar_menu_principal()

def cadastrar_novo_restaurante():
  exibir_subtitulo('Cadastro de novos restaurantes')
  nome_do_restaurante = input('Digite o nome do restaurante que deseja cadastrar: \n')
  restaurantes.append(nome_do_restaurante)
  print(f'O restaurante {nome_do_restaurante} foi cadastrado com sucesso.\n')
  voltar_menu_principal()

def listar_restaurante():
  exibir_subtitulo('Listando restaurantes')
  for restaurante in restaurantes:
    print(f'.{restaurante}')
  voltar_menu_principal()

  

def escolher_opcao():
 try:
   opcao_escolhida = int(input('Escolha uma opção: '))
   if opcao_escolhida == 1:
     cadastrar_novo_restaurante()
   elif opcao_escolhida == 2:
     listar_restaurante()
   elif opcao_escolhida == 3:
    print('Ativar restaurante.')
   elif opcao_escolhida == 4:
    finalizar_app()
   else :
    opcao_invalida()
 except:
    opcao_invalida()

def main():
    print('Finalizando o app\n')
    exibir_nome_programa()
    exibir_opcoes()
    escolher_opcao()


if __name__ == '__main__':
    main()
1 resposta

Saudações, Márcia! Tudo bem?

Parabéns! Mantenha o ritmo nos exercícios e continue compartilhando na nossa comunidade.

Percebi que você dominou o uso de funções para modularizar o código, aplicou muito bem o tratamento de exceções com try/except para evitar falhas inesperadas e ainda demonstrou compreender a relevância de listas dinâmicas para armazenar informações como os nomes dos restaurantes.

Uma sugestão para evoluir ainda mais é melhorar o comando de limpeza, com o objetivo de tornar seu código multiplataforma. Veja só:

os.system('cls' if os.name == 'nt' else 'clear')

O terminal será limpo corretamente, tanto no Windows quanto no Linux/macOS. Essa abordagem ajuda a evitar erros e tornar a experiência do usuário mais fluida, independentemente do sistema operacional.

Ícone de sugestão Para saber mais:

Sugestão de conteúdo para você mergulhar ainda mais sobre o tema:

Alguns materiais estão em inglês, mas é possível compreendê-los usando o recurso de tradução de páginas do próprio navegador.

Fico à disposição! E se precisar, conte sempre com o apoio do fórum.

Abraço e bons estudos!

AluraConte com o apoio da comunidade Alura na sua jornada. Abraços e bons estudos!