Como Validar CPF em Python (Algoritmo Completo)
Aprenda a implementar um validador de CPF em Python. Código pronto, explicação do algoritmo e exemplos de uso.
Introdução
Validar CPF é uma tarefa comum em sistemas brasileiros. Neste guia, você vai aprender a validar o Cadastro de Pessoas Físicas usando Python puro, sem dependências externas.
O Algoritmo
O algoritmo de validação do CPF funciona calculando dois dígitos verificadores com base nos 9 primeiros dígitos. Se os dígitos calculados forem iguais aos informados, o CPF é válido.
Implementação em Python
def validate_cpf(cpf: str) -> bool:
# Remove caracteres não numéricos
cpf = ''.join(filter(str.isdigit, cpf))
# Verifica se tem 11 dígitos ou se todos são iguais
if len(cpf) != 11 or len(set(cpf)) == 1:
return False
# Validação do primeiro dígito
sum_val = sum(int(cpf[i]) * (10 - i) for i in range(9))
digit_1 = (sum_val * 10) % 11
if digit_1 == 10: digit_1 = 0
if digit_1 != int(cpf[9]):
return False
# Validação do segundo dígito
sum_val = sum(int(cpf[i]) * (11 - i) for i in range(10))
digit_2 = (sum_val * 10) % 11
if digit_2 == 10: digit_2 = 0
return digit_2 == int(cpf[10])A função `validate_cpf` primeiro limpa a entrada, removendo pontos e traços. Em seguida, verifica se a string resultante tem o comprimento correto (11) e se não é uma sequência de dígitos iguais (o que invalidaria o cálculo). Depois, aplica o cálculo padrão dos dois dígitos verificadores.
Não quer escrever código?
Use nossa ferramenta online gratuita para processar CPF instantaneamente. Perfeito para testes rápidos.
Usar Ferramenta de CPF Online