1
resposta

Mão na massa : herança e modularização

Organização do diretório:

mao_na_massa
├── agencia.py
└── banco.py

Conteúdo em banco.py:

class Banco:
    def __init__(self, nome, endereco):
        self._nome = nome
        self._endereco = endereco

Conteúdo em agencia.py:

from banco import Banco
    
class Agencia(Banco):
    def __init__(self, nome, endereco, numero):
        super().__init__(nome, endereco)
        self.numero = numero
1 resposta

Oi, Guilherme! Como vai?

Sua organização em módulos está bem estruturada e facilita a reutilização e manutenção do código. O uso da função super() para herdar os atributos da classe Banco está correto e direto ao ponto.

Uma dica interessante para o futuro é usar o método __str__ para exibir informações mais legíveis sobre os objetos. Veja este exemplo:


class Banco:
    def __init__(self, nome, endereco):
        self._nome = nome
        self._endereco = endereco

    def __str__(self):
        return f'Banco: {self._nome}, Endereço: {self._endereco}'

Esse metodo imprime uma descricao amigavel do objeto quando usamos print(objeto).

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