PARTE 2
Exercicio-N7\main.py
from models.repositorio_equipes import Repositorio_Equipes
from models.equipe import Equipe
from models.componentes import Componente
def exibir_apresentacao():
"""Exibe no console uma apresentação amigável ao usuário"""
print ("\n\nOlá, seja bem-vindo ao campeonato do clube de atletismo Alura Runners. Como podemos ajudar? \n")
def selecionar_opcoes():
"""Permite o usuário escolher uma opção dentre os serviços disponíveiss"""
opcao_usuario = input (
"1 - Cadastrar equipe" \
"\n2 - Remover equipe" \
"\n3 - Mostrar a lista de equipes" \
"\n4 - Adicionar componente a uma equipe" \
"\n5 - Remover componente de uma equipe" \
"\n6 - Substituir posição de um componente" \
"\n7 - Sair; \n Digite o número da opção desejada: ")
return opcao_usuario
def confirmador():
""" Trava o sistema até o usuário digitar uma tecla para que o texto do console não passe muito rápido"""
input("\nAperte qualquer tecla para continuar")
print("\n\n\n")
def main():
while True:
try:
exibir_apresentacao()
opcao_usuario = int (selecionar_opcoes())
if opcao_usuario == 1:
nome_equipe = input("\nDigite o nome da equipe: ").title()
if Repositorio_Equipes.buscar_equipe_por_nome (nome_equipe):
print ("\nEssa equipe já está cadastrada. Por favor, tente novamente")
confirmador()
else:
Repositorio_Equipes.adicionar_equipe (Equipe (nome_equipe))
print (f"\nA equipe {nome_equipe} foi adicionada com sucesso!")
elif opcao_usuario == 2:
nome_equipe = input ("\nDigite o nome da equipe que se deseja excluir: ")
equipe_selecionada = Repositorio_Equipes.buscar_equipe_por_nome (nome_equipe)
if not equipe_selecionada:
print ("\nErro, esta equipe não existe em nosso banco de dados. Verifique se não houve erros de digitação no nome.")
confirmador()
else:
confirmacao = input (f"Deseja realmente deletar a equipe {equipe_selecionada.nome}? (S / qualquer outra tecla para cancelar): ").upper()
if confirmacao == "S":
Repositorio_Equipes.remover_equipe (equipe_selecionada)
else:
print ("Cancelando a exclusão. Voltando ao Menu Principal")
confirmador()
elif opcao_usuario == 3:
Repositorio_Equipes.exibir_lista_equipes()
confirmador()
elif opcao_usuario == 4:
nome_equipe = input("\nDigite o nome da equipe: ").title()
Equipe_selecionada = Repositorio_Equipes.buscar_equipe_por_nome (nome_equipe)
if Equipe_selecionada:
print ("\nEquipe encontrada\n")
nome_integrante = input ("Digite o nome do integrante que deseja adicionar: ").title()
if nome_integrante in [componente.nome for componente in Equipe_selecionada.componentes]:
print ("\nEste integrante já está cadastrado nesta equipe. Por favor, tente novamente")
confirmador()
else:
Equipe_selecionada.componentes.append (Componente (nome_integrante))
print (f"\nO integrante {nome_integrante} foi adicionado com sucesso à equipe {nome_equipe}!")
else:
print ("\nErro, esta equipe não existe em nosso banco de dados. Verifique se não houve erros de digitação no nome.")
confirmador()
# [...]