1
resposta

Fiz Assim - 07 Hora da prática: criando classes, construtores e métodos

Para não repetir cada pergunta, deixei dentro as marcações #[x], onde x representa o número do exercício e o código abaixo a resolução.

#[1]
class ContaBancaria:
    
    def __init__(self, titular, saldo):
        self.titular = titular
        self.saldo = saldo
        self._ativo = False
    #[2] 
    def __str__(self):
        return f'{self.titular:<20}{self.saldo:<13}{self.ativo}'
      
    #[3]
    @property
    def ativo(self):
        return 'Ativa'if self._ativo else 'Inativa' 

    def ativar_conta(self):
        self._ativo = not self._ativo

conta1 = ContaBancaria('Pedro Zecarias', 15000)
conta2 = ContaBancaria('Samantha Gomes', 66500)

print(f'''{'TITULAR':<20}{'SALDO (R$)':<13}{'STATUS'}
{'-'*40}
{conta1}
{conta2}
''')

ContaBancaria.ativar_conta(conta1)
print(f'Ativação de Conta: {conta1}')

#[4]
class ContaBancariaPythonica:
    
    def __init__(self, titular, saldo):
        self._titular = titular
        self._saldo = saldo
        self._ativo = False

#[5]
nova_conta1 = ContaBancariaPythonica('João dos Anjos', 10000000)
print(f'\nNova modalidade de conta para: {nova_conta1._titular.upper()}')

#[6]
class ClienteBanco:
    clientes = []
    def __init__(self, nome, idade, profissao, titular,limite_credito):
        self._nome = nome.title()
        self._idade = idade
        self._profissao = profissao.title()
        self._titular = titular
        self._limite_credito = limite_credito
        ClienteBanco.clientes.append(self)
    @property
    def titular_status(self):
        return 'Sim' if self._titular else 'Não'   
 #[7]   
    @classmethod
    def listar_clientes(cls):
        print(f'{'NOME':<15}{'IDADE':<10}{'PROFISSÃO':<20}{'TITULAR':<15}{'LIMITE DE CRÉDITO'}')
        for cliente in cls.clientes:
            print(f'{cliente._nome:<15}{cliente._idade:<10}{cliente._profissao:<20}{cliente.titular_status:<15}{cliente._limite_credito}')

cliente1 = ClienteBanco('bezerra',69, 'agricultor', True, 200000 )
cliente2 = ClienteBanco('Elêonor',50, 'designer de moda', True, 350000 )
cliente3 = ClienteBanco('enzo',15, 'estudante', False, 100 )

ClienteBanco.listar_clientes()
1 resposta

Oi, Shayne! Tudo bem?

Ótima implementação, parabéns pelo código funcional! É muito bacana poder acompanhar a sua evolução por aqui! Caso tenha restado alguma dúvida em relação a qualquer conteúdo do curso ou atividade, não hesite em perguntar, estou disponível e ficarei super feliz em poder ajudar!

Um forte abraço e bons estudos!