Enviado em 31/10/2018 - 10:06h
Pessoal, estou começando com Python e estou tendo muita dificuldade em acessar uma classe, poderiam me ajudar?import shelve
class Cliente():
def __init__(self, nome, cpf, nascimento, saldo = 0):
self.nome = nome
self.cpf = cpf
self.nascimento = nascimento
self.saldo = saldo
def saque(self, valor):
self.saldo =- valor
def deposito(self, valor):
self.saldo =+ valor
def menu_conta(self):
escolha = input("""
1 - Sacar
2 - Depositar
3 - Consultar saldo
4 - Consultar dados da conta
""")
def __str__(self):
return ', '.join(['{key}={value}'.format(key=key.upper(), value=self.__dict__.get(key)) for key in self.__dict__])
class Banco():
banco_de_dados = shelve.open("database.dat")
dicionario = {}
def abre_conta(self):
banco_de_dados = shelve.open("database.dat")
seu_nome = input("Nome: ")
seu_cpf = input("CPF: ")
while seu_cpf in banco_de_dados:
print("CPF já cadastrado ")
seu_cpf = input("CPF: ")
seu_nascimento = input("Data de Nascimento: ")
self.nova_conta = Cliente(seu_nome, seu_cpf, seu_nascimento)
self.dicionario['Nome'] = self.nova_conta.nome
self.dicionario['Cpf'] = self.nova_conta.cpf
self.dicionario['Nascimento'] = self.nova_conta.nascimento
self.dicionario['Saldo'] = self.nova_conta.saldo
banco_de_dados[self.nova_conta.cpf] = self.nova_conta
def acessa_conta(self, cpf):
banco_de_dados = shelve.open("database.dat")
for numero in banco_de_dados:
if cpf == banco_de_dados[cpf]:
banco_de_dados[self.cpf].menu_conta()
def menu_banco(self):
escolha = input("""
1 - Abrir uma conta
2 - Acessar uma conta existente
""")
if escolha == "1":
self.abre_conta()
elif escolha == "2":
cpfAcessa = input("Digite o CPF da conta que deseja acessar ")
self.acessa_conta(cpfAcessa)
Atenção a quem posta conteúdo de dicas, scripts e tal (1)
Manutenção de sistemas Linux Debian e derivados com apt-get, apt, aptitude e dpkg
Melhorando o tempo de boot do Fedora e outras distribuições
Como instalar as extensões Dash To Dock e Hide Top Bar no Gnome 45/46
Como Atualizar Fedora 39 para 40
Instalar Google Chrome no Debian e derivados
Consertando o erro do Sushi e Wayland no Opensuse Leap 15
Instalar a última versão do PostgreSQL no Lunix mantendo atualizado
Flathub na sua distribuição Linux e comandos básicos de gerenciamento
erro ao clonar repo github (3)
Clamav e suas atualizações (25)
Como adicionar módulo de saúde da bateria dos notebooks Acer ao kernel... (23)
[Shell Script] Script para desinstalar pacotes desnecessários no OpenSuse
[Shell Script] Script para criar certificados de forma automatizada no OpenVpn
[Shell Script] Conversor de vídeo com opção de legenda
[C/C++] BRT - Bulk Renaming Tool
[Shell Script] Criação de Usuarios , Grupo e instalação do servidor de arquivos samba