cnpjcpf.
Código · Python

CPF e CNPJ em Python

Funções em Python puro (só a biblioteca padrão) para validar, gerar e formatar CPF e CNPJ — já com o formato alfanumérico. Cada tarefa tem sua página com o código completo e os casos de borda.

Por tarefa

Início rápido

A validação de CPF em uma função, só com a biblioteca padrão:

Python
import re

def is_valid_cpf(cpf: str) -> bool:
    cpf = re.sub(r'\D', '', cpf)
    if len(cpf) != 11 or cpf == cpf[0] * 11:
        return False
    for i in (9, 10):
        soma = sum(int(cpf[j]) * ((i + 1) - j) for j in range(i))
        if (soma * 10 % 11) % 10 != int(cpf[i]):
            return False
    return True

Página completa, com casos de borda e a versão com máscara: validar CPF em Python.

publicidade

Prefere uma biblioteca?

Para projetos maiores, vale usar uma lib mantida: brutils (is_valid_cpf, generate_cnpj e afins) ou validate-docbr (CPF, CNPJ, IE por UF, PIS, CNH). Confirme o suporte ao CNPJ alfanumérico na versão que você instalar.

Continue

Validadores verificados por execução contra os casos oficiais; geradores conferidos gerando milhares de amostras e validando cada uma. Algoritmo módulo 11 (numérico e alfanumérico). Revisado em 06/2026.