Script para validar RG

504 views
Skip to first unread message

edmar Caldas

unread,
May 9, 2015, 10:54:42 AM5/9/15
to python...@googlegroups.com

 

 


Bom Dia!

 

Oi pessoal, eu acompanha as dúvidas de vocês porque tenho interesse em desenvolver nesta linguagem. Mas devido a tempo ainda nem comecei o 1 programa. Peço a gentileza se tiverem algum script que valide RG de São Paulo e puderem me mandar eu agradeço.

 

 




Este email foi escaneado pelo Avast antivírus.
www.avast.com


Rafael Brito de Oliveira

unread,
May 9, 2015, 11:34:35 AM5/9/15
to python...@googlegroups.com
Bom dia Edmar,

Talvez se dirigir à esse grupo pedindo soluções próprias não seja a forma mais apropriada. Ao contrário disso se você pedir orientações sobre quais caminhos seguir para validar, ou se até mesmo você tentar fazer e após isso pedir ajuda, tenho certeza que muitas pessoas irão te ajudar.

--
--
------------------------------------
Grupo Python-Brasil
http://www.python.org.br/wiki/AntesDePerguntar
 
<*> Para visitar o site do grupo na web, acesse:
http://groups.google.com/group/python-brasil
 
<*> Para sair deste grupo, envie um e-mail para:
python-brasi...@googlegroups.com

---
Você recebeu essa mensagem porque está inscrito no grupo "Python Brasil" dos Grupos do Google.
Para cancelar inscrição nesse grupo e parar de receber e-mails dele, envie um e-mail para python-brasi...@googlegroups.com.
Para mais opções, acesse https://groups.google.com/d/optout.

Iuri

unread,
May 9, 2015, 11:42:52 AM5/9/15
to python...@googlegroups.com
Existe um padrão para RG em SP? Sei que o RG dos meus pais tem menos digitos que o meu, todos sendo SSP/SP.

Linux - Junior Polegato

unread,
May 9, 2015, 12:04:13 PM5/9/15
to python...@googlegroups.com
Olá!

Após 1987 os RGs em SP receberam um dígito verificador, o último, que vai de 0 a 9 mais o X.

A validação e seu cálculo, por módulo 11 [1], pode ser visto na internet em qualquer site, no Google, de prima, me retornou esse [2].

Em Python (para uma pergunta sem esforço em solucionar, uma resposta sem explicação):

rg_com_dv = '323456789X''

print 'Válido!' if str(sum(map(lambda x: (x[0] + 2) * int(x[1]), enumerate(rg_com_dv[-2::-1]))) % 11).replace('10', 'X') == rg_com_dv[-1].upper() else 'Inválido!'


[1] http://pt.wikipedia.org/wiki/D%C3%ADgito_verificador
[2] http://ghiorzi.org/DVnew.htm


[]'s

Junior Polegato

Linux - Junior Polegato

unread,
May 9, 2015, 12:35:17 PM5/9/15
to python...@googlegroups.com
Em tempo, todo site sobre o assunto, claro! :)

A título de curiosidade, encontrei esse PDF sobre o novo rg (ric) e sobre o rg em cada estado:

http://www.alfamil.com.br/downloads/RG.pdf

edmar Caldas

unread,
May 9, 2015, 1:15:54 PM5/9/15
to python...@googlegroups.com

Obrigado

Reply all
Reply to author
Forward
0 new messages