Configurações do decorator dataclass

This commit is contained in:
Luiz Otávio
2022-12-03 08:27:13 -03:00
parent 482d636969
commit b09301b1e2

View File

@@ -8,31 +8,13 @@
from dataclasses import dataclass
@dataclass(init=False)
@dataclass(repr=True)
class Pessoa:
nome: str
sobrenome: str
def __init__(self, nome, sobrenome):
self.nome = nome
self.sobrenome = sobrenome
self.nome_completo = f'{self.nome} {self.sobrenome}'
def __post_init__(self):
print('POST INIT')
# @property
# def nome_completo(self):
# return f'{self.nome} {self.sobrenome}'
# @nome_completo.setter
# def nome_completo(self, valor):
# nome, *sobrenome = valor.split()
# self.nome = nome
# self.sobrenome = ' '.join(sobrenome)
if __name__ == '__main__':
p1 = Pessoa('Luiz', 'Otávio')
print(p1)
print(p1.nome_completo)
lista = [Pessoa('A', 'Z'), Pessoa('B', 'Y'), Pessoa('C', 'X')]
ordenadas = sorted(lista, reverse=True, key=lambda p: p.sobrenome)
print(ordenadas)