1 - Crie uma classe chamada ContaBancaria com um construtor que aceita os parâmetros titular e saldo. Inicie o atributo ativo como False por padrão.
2 - Na classe ContaBancaria, adicione um método especial str que retorna uma mensagem formatada com o titular e o saldo da conta. Crie duas instâncias da classe e imprima essas instâncias.
3 - Adicione um método de classe chamado ativar_conta à classe ContaBancaria que define o atributo ativo como True. Crie uma instância da classe, chame o método de classe e imprima o valor de ativo.
Tentei deixar com a formatação padronizada com ljust, mas sempre dava erro então deixei sem isso pra seguir com o desafio e fazer as outras propostas, mas se alguém puder me ajudar nesse ponto, agradeço.
import os
class Conta_bancaria:
lista_de_correntistas = []
def __init__(self, titular, saldo, status=False):
self._titular = titular.title()
self._saldo = saldo
self._status = status
Conta_bancaria.lista_de_correntistas.append(self)
def __str__(self):
return f'{self._titular} | {self._saldo}'
@classmethod
def exibir_correntistas(cls):
os.system('cls')
print(f'{'Titular'.ljust(25)} | {'Saldo'.ljust(25)} | {'Status'}')
for correntista in cls.lista_de_correntistas:
print(f'{correntista._titular} | {correntista._saldo} | {correntista._status}')
@property
def ativo(self):
return '☑' if self._ativo else '☐'
def alternar_status(self):
self._status = not self._status
correntista_ana = Conta_bancaria('Ana' , 5000)
correntista_maria = Conta_bancaria('Maria', 7200)
correntista_maria.alternar_status()
Conta_bancaria.exibir_correntistas()
5 - Crie uma instância da classe e imprima o valor da propriedade titular.
correntista_paula = Conta_bancaria("Paula", 10000)
print(f"Titular da conta 4: {correntista_paula.titular}")