-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathpessoas.py
46 lines (36 loc) · 1.08 KB
/
pessoas.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
import contas
class Pessoa:
def __init__(self, nome: str, idade: int) -> None:
self.nome = nome
self.idade = idade
@property
def nome(self):
return self._nome
@nome.setter
def nome(self, nome: str):
self._nome = nome
@property
def idade(self):
return self._idade
@idade.setter
def idade(self, idade: int):
self._idade = idade
def __repr__(self):
class_name = type(self).__name__
attrs = f'({self.nome!r}, {self.idade!r})'
return f'{class_name}{attrs}'
class Cliente(Pessoa):
def __init__(self, nome: str, idade: int) -> None:
super().__init__(nome, idade)
self.conta: contas.Conta | None = None
if __name__ == '__main__':
c1 = Cliente('Marina', 25)
c1.conta = contas.ContaCorrente(111, 222, 0, 0)
print(c1)
print(c1.conta)
print()
print()
c2 = Cliente('Felipe', 23)
c2.conta = contas.ContaPoupanca(112, 223, 100)
print(c2)
print(c2.conta)