1
resposta

[Sugestão] Conta bancária

class ContaBancaria:
    def __init__(self, titular, saldo=int):
        self._ativo = False
        self._titular = titular
        self._saldo = saldo

    def __str__(self):
        return f'Titular: {(self._titular).ljust(10)} | Saldo: {(self._saldo)} | Status: {(self.ativar_conta)}' 
    
    @property
    def titular(self):
        return self._titular

    @property
    def saldo(self):
        return self._saldo
    
    @property
    def ativar_conta(self):
        return "Ativo" if self._ativo else "Inativo"
    
p1 = ContaBancaria('Gustavo', 1500)
p2 = ContaBancaria('Ana', 2500)
p1._ativo
print(p1)
print(p2)


1 resposta

Olá, Gustavo! Como vai?

Parabéns pela resolução da atividade!

Observei que você explorou o uso de classes para estruturar dados, utilizou muito bem o método especial __str__ para personalizar a saída e ainda compreendeu a importância das propriedades para controlar o acesso aos atributos.

Uma dica interessante para o futuro é criar um método para ativar ou desativar a conta, em vez de manipular diretamente o atributo _ativo. Assim:

class ContaBancaria:
    def __init__(self, titular, saldo=0):
        self._ativo = False
        self._titular = titular
        self._saldo = saldo

    def __str__(self):
        return f'Titular: {self._titular.ljust(10)} | Saldo: {self._saldo} | Status: {self.ativar_conta}' 
    
    @property
    def titular(self):
        return self._titular

    @property
    def saldo(self):
        return self._saldo
    
    @property
    def ativar_conta(self):
        return "Ativo" if self._ativo else "Inativo"
    
    def ativar(self):
        self._ativo = True
    
    def desativar(self):
        self._ativo = False

p1 = ContaBancaria('Gustavo', 1500)
p2 = ContaBancaria('Ana', 2500)

p1.ativar()  # Ativando a conta de Gustavo

print(p1)
print(p2)

Isso faz com que o código siga boas práticas de encapsulamento, evitando alterar atributos diretamente e mantendo maior controle sobre o estado da conta.

Fico à disposição! E se precisar, conte sempre com o apoio do fórum.

Abraço e bons estudos!

AluraConte com o apoio da comunidade Alura na sua jornada. Abraços e bons estudos!