asdict e astuple em dataclasses

This commit is contained in:
Luiz Otávio
2022-12-03 08:44:30 -03:00
parent b09301b1e2
commit 14bbe6bef1

View File

@@ -5,16 +5,18 @@
# Em resumo: dataclasses são syntax sugar para criar classes normais. # Em resumo: dataclasses são syntax sugar para criar classes normais.
# Foi descrito na PEP 557 e adicionado na versão 3.7 do Python. # Foi descrito na PEP 557 e adicionado na versão 3.7 do Python.
# doc: https://docs.python.org/3/library/dataclasses.html # doc: https://docs.python.org/3/library/dataclasses.html
from dataclasses import dataclass from dataclasses import asdict, astuple, dataclass
@dataclass(repr=True) @dataclass
class Pessoa: class Pessoa:
nome: str nome: str
sobrenome: str sobrenome: str
if __name__ == '__main__': if __name__ == '__main__':
lista = [Pessoa('A', 'Z'), Pessoa('B', 'Y'), Pessoa('C', 'X')] p1 = Pessoa('Luiz', 'Otávio')
ordenadas = sorted(lista, reverse=True, key=lambda p: p.sobrenome) print(asdict(p1).keys())
print(ordenadas) print(asdict(p1).values())
print(asdict(p1).items())
print(astuple(p1)[0])