Ja tentei re escrever de todas as formas, mas não consigo ver onde errei alguem poderia me ajudar.
from validate_docbr import CPF, CNPJ
class Documento:
@staticmethod
def cria_documento(documento):
documento = str(documento)
if len(documento) == 11:
return DocCpf(documento)
elif len(documento) == 14:
return DocCnpj(documento)
else:
raise ValueError("Quantidade de digitos esta incorreta!!!")
class DocCpf:
def __imit__(self,documento):
if self.cpf_e_valido(documento):
self.cpf = documento
else:
raise ValueError("Cpf invalido!")
def __str__(self):
return self.formtar_cpf()
def cpf_e_valido(self, cpf):
validador_cpf = CPF()
return validador_cpf.validate(cpf)
def formtar_cpf(self):
mascara = CPF()
return mascara.mask(self.cpf)
class DocCnpj:
def __imit__(self,documento):
if self.cnpj_e_valido(documento):
self.cnpj = documento
else:
raise ValueError("Cnpj invalido!")
def __str__(self):
return self.formtar_cnpj()
def cnpj_e_valido(self, cnpj):
validador_cnpj = CNPJ()
return validador_cnpj.validate(cnpj)
def formtar_cnpj(self):
mascara = CNPJ()
return mascara.mask(self.cnpj)
Quando eu tento rodar:
from cpf_cnpj import Documento
exemplo_cpf = "50927117878"
exemplo_cnpj = "33592510000154"
documento = Documento.cria_documento(exemplo_cnpj)
print(documento)
Aparece o erro:
Traceback (most recent call last):
File "D:/Felipe Coquito/Documents/PycharmProjects/Alura - Py 3/Py Br dados/main.py", line 5, in <module>
documento = Documento.cria_documento(exemplo_cnpj)
File "D:\Felipe Coquito\Documents\PycharmProjects\Alura - Py 3\Py Br dados\cpf_cnpj.py", line 10, in cria_documento
return DocCnpj(documento)
TypeError: DocCnpj() takes no arguments