A validação de CPF em Python pode ser feita com base nas regras definidas para os dígitos verificadores.
Aqui está uma função simples que verifica se um CPF é válido:
def valida_cpf(cpf):
# Remover caracteres não numéricos
cpf = ''.join(filter(str.isdigit, cpf))
# Verificar se o CPF tem 11 dígitos
if len(cpf) != 11:
return False
# Verificar se todos os dígitos são iguais
if cpf == cpf[0] * 11:
return False
# Calcular o primeiro dígito verificador
soma = 0
for i in range(9):
soma += int(cpf[i]) * (10 - i)
resto = soma % 11
digito1 = 11 - resto if resto >= 2 else 0
# Verificar o primeiro dígito verificador
if digito1 != int(cpf[9]):
return False
# Calcular o segundo dígito verificador
soma = 0
for i in range(10):
soma += int(cpf[i]) * (11 - i)
resto = soma % 11
digito2 = 11 - resto if resto >= 2 else 0
# Verificar o segundo dígito verificador
if digito2 != int(cpf[10]):
return False
# Se todas as verificações passaram, o CPF é válido
return True
# Exemplo de uso
cpf = "123.456.789-09"
if valida_cpf(cpf):
print("CPF válido")
else:
print("CPF inválido")
Esta função valida_cpf
recebe um CPF como string e retorna True
se o CPF for válido e False
se não for. Certifique-se de que o CPF é uma string contendo apenas números. O código remove qualquer caractere não numérico antes de realizar as verificações.
Lembre-se de que esta validação é baseada nas regras de formação do CPF, mas não garante que o CPF é ativo ou pertence a uma pessoa real.
Comentários
Postar um comentário