1
resposta

Erro de sintaxe, cpf com 000

SyntaxError: leading zeros in decimal integer literals are not permitted; use an 0o prefix for octal integers

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 ("CPF NÃO CONTEM 12 DIGITOS!")

def format_cpf(self):
    mascara = CPF()
    return mascara.mask(self.cpf)

def __str__(self):
    return self.format_cpf()

o cpf que estou tentando validar = 03079166000

1 resposta

Olá Julia, aparentemente o Python não permite um valor inteiro começar com um zero a esquerda. O que eu fiz para contornar isto é passar o CPF já em forma de string: "03079166000". Outro jeito que eu consegui fazer funcionar, é pedir um input para o usuário, e esse input já ser transformado em string, assim:

cpf = str(input("Informe o CPF"))

Acredito que há outras formas de contornar o problema, mas já não é do meu conhecimento.

Quer mergulhar em tecnologia e aprendizagem?

Receba a newsletter que o nosso CEO escreve pessoalmente, com insights do mercado de trabalho, ciência e desenvolvimento de software