def cadastro_senhas(): # cadastrando e validando senha while True: senha = input("Por favor, informe uma senha de 8 caracteres: ") if len(senha) == 8: break pergunta_secreta = input( "Agora vamos definir uma pergunta secreta.\nInforme sua pergunta: ") senha_pergunta = input("Excelente pergunta. Informe a resposta: ") #cadastrando e valindo a letra secreta while True: letras_secretas = input("Informe as letras secretas: ") if not letras_secretas.isalpha(): print("Ops! Aqui você só pode digitar letras.") else: break limpa_tela() #confirmando os dados while True: print( f"SENHA: {senha}\nPERGUNTA SECRETA: {pergunta_secreta.upper()}\nRESPOSTA DA PERGUNTA: {senha_pergunta}\nLETRAS SECRETAS: {letras_secretas.upper()}" ) valida_dados = int( input("Você confirma seus dados?\n 1 - SIM\t2 - EDITAR DADOS\n")) if valida_dados == 1: return senha, pergunta_secreta, senha_pergunta, letras_secretas elif valida_dados == 2: print('editar') #editar_dados(senha, pergunta_secreta, senha_pergunta, letras_secretas) else: print("Opção inválida! Tente novamente.")
def cadastrar_conta(): limpa_tela() print("########## CADASTRO DE CONTA ##########\n") cpf = cadastrar_pessoa() if cpf: banco = banco_select() print(f"Bem-vindo ao {banco}") print("Agora vamos gerenciar suas opções de segurança. ") sleep(1.5), limpa_tela() senha, pergunta_secreta, senha_pergunta, letras_secretas = cadastro_senhas( ) print( f"Obrigada pela preferência! Você ganhou um bônus no valor de R$ 20,00 por ter escolhido o {banco}!" ) sleep(2) limpa_tela() while True: agencia = gera_dado_conta(1000) if not dado_in_lista(2, agencia): break while True: numero_conta = gera_dado_conta(100000) if not dado_in_lista(3, numero_conta): break with open("conta.txt", "a") as f: f.write( f"{banco};{cpf};{agencia};{numero_conta};{senha};20;{pergunta_secreta};{senha_pergunta};{letras_secretas}\n" ) f.close() else: print(f"O CPF já consta em nossos registros.")
def banco_select(): bancos = ['NuBank', 'ViaCredi', 'Itau', 'Santander', 'Bradesco'] print("Para começar, informe o banco no qual você deseja abrir a conta:") while True: for i in range(len(bancos)): print(f"\t{i + 1} - {bancos[i]}") try: option = int(input("Informe a opção desejada: ")) if option in [1, 2, 3, 4, 5]: return bancos[option - 1] limpa_tela() except ValueError as e: print("Ops! Algo deu errado. Tente novamente.") sleep(1.3), limpa_tela()
def cadastrar_pessoa(): limpa_tela() print("########## CADASTRO DE PESSOA ##########\n") cpf = input("Informe seu CPF: ") if not dado_in_lista(1, cpf): nome = input("NOME: ") data_nasc = input("DATA DE NASCIMENTO: ") telefone = input("TELEFONE: ") email = input("E-MAIL:") endereco = input("ENDEREÇO: ") print('\n') pessoa = Pessoa(nome, cpf, email, endereco, data_nasc, telefone) salvar_arquivo(pessoa) return cpf return False
def fazer_transferencia(numero_conta): while True: numconta_transferencia = input("Informe o número da conta para fazer transferência: ") lista, index = filtrar_conta(numconta_transferencia) if lista: pessoa = filtrar_pessoa(lista[index][1]) valor = 0 valida_transferencia = 0 while True: try: valida_transferencia = int(input(f"TRANSFERIR PARA: {pessoa[1]}\nNÚMERO DA CONTA: {numconta_transferencia}\n1 - SIM\t2 - NÃO\nInforme: ")) if valida_transferencia in [1, 2]: limpa_tela() break except ValueError: print("Opção Inválida!") if valida_transferencia == 1: while True: saldo = visualizar_saldo(numero_conta) valor = int(input("Informe o valor que você deseja transferir: ")) if valor > saldo: print("Ops! Você possui um saldo inferior ao valor que deseja transferir! Insira outro valor: ") else: break else: continue valida_valor = 0 while True: try: valida_valor = int(input(f"TRANSFERIR R$ {valor:.2f} PARA: {pessoa[1]}\nNÚMERO DA CONTA: {numconta_transferencia}\n1 - SIM\t2 - CANCELAR\nInforme: ")) if valida_valor in [1, 2]: limpa_tela() break except ValueError: print("Opção Inválida!") if valida_valor == 1: lista[index][5] = int(lista[index][5]) + valor update_contas(lista) print(f"Você transferiu R$ {valor:.2f} para {pessoa[1]}") limpa_tela() break else: break else: print("Número de conta inválido! ")
def acessar_conta(): while True: limpa_tela() numero_conta = input("Informe o número da conta: ") senha = getpass(prompt='Senha:') letra = getpass(prompt='Senha de letra: ') if valida_login(numero_conta, senha, letra): limpa_tela() break else: print("Dados incorretos. Tente novamente.") while True: option = int( input(f''' 1 - Visualizar Saldo 2 - Fazer um depósito 3 - Saque 4 - Transferência 5 - Visualizar Dados 6 - Sair\n\nR: ''')) if option == 1: limpa_tela() visualizar_saldo(numero_conta) elif option == 2: limpa_tela() fazer_deposito(numero_conta) elif option == 3: limpa_tela() saque(numero_conta) elif option == 4: limpa_tela() fazer_transferencia(numero_conta) # elif option == 5: # contar() # visualizar_dados(numero_conta, quant) else: break
from arquivo import limpa_tela class Conta(): def __init__(self, banco, pessoa:Pessoa, numero:str, agencia:str, tipo_conta:int, saldo:float, senha:str): self.banco = banco self.pessoa = pessoa self.numero = numero self.agencia = agencia self.tipo_conta = tipo_conta self.saldo = saldo self.senha = senha if __name__ == "__main__": while True: limpa_tela() valor = int(input( """Digite a operação desejada 1 - Cadastrar Conta 2 - Acessar Conta 3 - Sair\n""")) if valor == 1: limpa_tela() cadastrar_conta() elif valor == 2: limpa_tela() acessar_conta() elif valor == 3: limpa_tela() print("Agradecemos a sua visita!")