22
loading...
This website collects cookies to deliver better user experience
Classe
que representa as características daquele objeto.from abc import ABCMeta, abstractmethod
class Conta(metaclass=ABCMeta):
_numero = "00000"
_titular = "root"
saldo = 0
@abstractmethod
def __init__(self, numero: str, titular: str, saldo: float):
self._numero = numero
self._titular = titular
self.saldo = saldo
@abstractmethod
def sacar(self, value: float):
pass
@abstractmethod
def depositar(self, value: float):
pass
@abstractmethod
def exibir_saldo(self):
pass
class Biblioteca:
def __init__(self, livros_disponiveis) -> None:
self.livros_disponiveis = livros_disponiveis
def exibir_livros(self):
for livro in self.livros_disponiveis:
print(livro)
def emprestar_livro(self, livro):
print(f'Você escolheu o livro: {livro}')
if livro in self.livros_disponiveis:
self.livros_disponiveis.remove(livro)
else:
print('Desculpe o livro não está disponível!')
def devolver_livro(self, livro):
self.livros_disponiveis.append(livro)
print(f'Obrigado pro devolver o livro: {livro}')
// biblioteca me mostre os livros:
biblioteca.exibir_livros()
class Conta():
_numero = "00000"
_titular = "root"
saldo = 0
def __init__(self, numero: str, titular: str, saldo: float):
self._numero = numero
self._titular = titular
self.saldo = saldo
def depositar(self, value: float):
# Regra para fazer o depósito...
def exibir_saldo(self):
# Exiba o saldo...
# Para aplicar a herança em Python, basta referênciar a classe que se quer herdar entre parenteses:
class ContaPoupaca(Conta):
def __init__(self, numero: str, titular: str, saldo: float):
super().__init__(numero, titular, saldo)
def sacar(self, value: float):
if value <= self._saldo:
self._saldo -= value
return True
return False
def titular(self):
return self._titular
def numero(self):
return self._numero
from abc import ABCMeta, abstractmethod
class Conta(metaclass=ABCMeta):
_numero = "00000"
_titular = "root"
_saldo = 0
@abstractmethod
def __init__(self, numero: str, titular: str, saldo: float):
self._numero = numero
self._titular = titular
self._saldo = saldo
@abstractmethod
def sacar(self, value: float):
pass
@abstractmethod
def depositar(self, value: float):
pass
@abstractmethod
def exibir_saldo(self):
pass
class ContaPoupanca(Conta):
def __init__(self, numero: str, titular: str, saldo: float):
super().__init__(numero, titular, saldo)
def sacar(self, value: float):
if value <= self._saldo:
self._saldo -= value
return True
return False
def depositar(self, value: float):
if value > 0:
self._saldo += value
return True
return False
def exibir_saldo(self):
return self._saldo
def titular(self):
return self._titular
def numero(self):
return self._numero
class BankingSystem:
__contas = []
def __gerar_numero_conta(self):
numero = len(self.__contas) + 1
return f"{numero:05}"
def __checar_valor_positivo(self, value):
if value <= 0:
return False
return True
def criar_conta_poupanca(self, deposito_inicial: float, nome_titular: str):
if self.__checar_valor_positivo(deposito_inicial) == False:
print("Deposito Inicial deve ser maior que Zero!")
return
conta = Savingsconta(self.__gerar_numero_conta(), nome_titular, deposito_inicial)
self.__contas.append(conta)
print("Conta criada com sucesso!")
print("Titular: ", conta.titular())
print("Número da conta: ", conta.numero())
print("Saldo: ", conta.exibir_saldo())
def total_of_contas(self):
print("contas: ", str(len(self.__contas)))
def acessar_conta(self, nome_titular: str, conta_numero: str):
contas = [acc for acc in self.__contas
if acc.titular() == nome_titular and acc.numero() == conta_numero]
if len(contas) == 0:
print("Conta não existe!")
return
conta = contas[0]
print("Digite 1 para sacar")
print("Digite 2 para depositar")
print("Digite 3 para exibir saldo")
escolha_usuario = (int(input()))
if escolha_usuario == 1:
print("sacar")
print("Digite o valor a sacar")
value = float(input())
if conta.sacar(value):
print("Saque realizado com sucesso!")
else:
print("Problema ao sacar, verifique o saldo!")
elif escolha_usuario == 2:
print("DEPOSITAR")
print("Digite o valor do depósito")
value = float(input())
if conta.depositar(value):
print("Deposito realizado com sucesso!")
else:
print("Problema ao depositar, valor não permitido!")
elif escolha_usuario == 3:
print(conta.exibir_saldo())
else:
print("Escolha inválida!")
banking_system = BankingSystem()
while True:
print("Digite 1 para criar uma conta poupança")
print("Digite 2 para acessar a conta")
print("Digite 3 para exibir o total de contas")
print("Digite 0 para sair")
escolha_usuario = (int(input()))
if escolha_usuario == 1:
print("CREATE")
print("Digite o nome do titular da conta")
nome_titular = input()
print("Digite o deposito inicial")
initial_deposit = float(input())
banking_system.criar_conta_poupanca(initial_deposit, nome_titular)
elif escolha_usuario == 2:
print("ACCESS")
print("Digite o name do titular da conta")
nome_titular = input()
print("Digite o conta numero")
conta_numero = input()
banking_system.access_conta(nome_titular, conta_numero)
elif escolha_usuario == 3:
banking_system.total_of_contas()
elif escolha_usuario == 0:
quit()
else:
print("Escolha inválida!")