Ao tentar instanciar a classe Documento, estou com erro para acessar CPF ou CNPJ . Estou com o seguinte erro: NameError: name 'DocCpf' is not defined ou NameError: name 'DocCnpj' is not defined.
from validate_docbr import CPF,CNPJ
class Documento:
@staticmethod
def criaDocumento(documento):
if len(documento) == 11:
return DocCpf(documento)
elif len(documento) == 14:
return DocCnpj(documento)
else:
raise ValueError("Quantidade de dígitos está incorreta")
class DocCpf:
def __init__(self,documento):
if self.valida(documento):
self.cpf = documento
else:
raise ValueError("Cpf inválido")
def valida(self, documento):
cpf = CPF()
return cpf.validate(documento)
def format(self):
mascara = CPF()
return mascara.mask(self.cpf)
def __str__(self):
return self.format()
class DocCnpj:
def __init__(self,documento):
if self.valida(documento):
self.cnpj = documento
else:
raise ValueError("CNPJ inválido")
def valida(self, documento):
cnpj = CNPJ()
return cnpj.validate(documento)
def format(self):
mascara = CNPJ()
return mascara.mask(self.cnpj)
def __str__(self):
return self.format()