Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- # calcula um digito verificador.
- def calcula_peso(parte_verificavel :str) -> int:
- somatorio = 0
- peso = len(parte_verificavel) + 1
- for i in parte_verificavel:
- somatorio += peso * int(i)
- peso -= 1
- resto = somatorio % 11
- digito_verificador = 0 if resto < 2 else 11 - resto
- return digito_verificador
- # aceita um cpf no formato 000.000.000-00
- def validar_cpf(cpf :str) -> bool:
- cpf = cpf.replace('.','').replace('-','')
- dv = cpf[-2:]
- parte_verificavel = cpf[0:9]
- primeiro_dv = calcula_peso(parte_verificavel)
- segundo_dv = calcula_peso(parte_verificavel + str(primeiro_dv))
- return (int(dv[0]) == primeiro_dv and int(dv[1]) == segundo_dv)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement