def validar_cpf(cpf): """ Valida um CPF seguindo as regras do governo brasileiro. Retorna True se o CPF é válido, False caso contrário. """ # Remove caracteres não numéricos cpf = ''.join(filter(str.isdigit, cpf)) # Verifica se tem 11 dígitos if len(cpf) != 11: return False # Verifica se todos os dígitos são iguais if len(set(cpf)) == 1: return False # Calcula primeiro dígito verificador soma = 0 for i in range(9): soma += int(cpf[i]) * (10 - i) resto = soma % 11 digito1 = 0 if resto < 2 else 11 - resto if int(cpf[9]) != digito1: return False # Calcula segundo dígito verificador soma = 0 for i in range(10): soma += int(cpf[i]) * (11 - i) resto = soma % 11 digito2 = 0 if resto < 2 else 11 - resto return int(cpf[10]) == digito2