from validate_docbr import CPF
class Cpf:
def __init__(self, documento):
documento = str(documento)
if self.cpf_eh_Valido(documento):
self.cpf = documento
else:
raise ValueError("CPF inválido!")
def cpf_eh_Valido(self, cpf):
if len(cpf) == 11:
validador = CPF()
return validador.validate(cpf)
else:
raise ValueError("Quantidade de dígitos inválida!")
def format_cpf(self):
mascara = CPF()
return mascara.mask(self.cpf)
def __str__(self):
return self.format_cpf()
No código acima como está no material escrito da aula, não há a identação no método "format_cpf": mascara = CPF() e return mascara.mask(self.cpf) precisam estar identados.
Além disso:
from cpf import cpf
cpf_um = ("15316264754")
print(cpf_um)
Também há um erro nessa parte do material escrito, que se propõe a imprimir a numeração formatada, entretanto é necessário chamar a classe na hora de instanciar. E a forma correta deveria ser:
from cpf import cpf
cpf_um = Cpf("15316264754")
print(cpf_um)
Deixando isso no fórum caso alguem esteja com dúvidas ou problemas para executar o código conforme está no material escrito.