Gerador de cartão de crédito com Tkinter
Publicado por João Victor (última atualização em 15/03/2013)
[ Hits: 20.191 ]
Um script que gera números de cartões de crédito com base em um dígito validador. Esse script é uma das minhas primeiras experiências em Python, portando deve conter erros. Não me responsabilizo pelo uso indevido do programa.
#!/usr/bin/python #Author vikitor566 # Importacao from Tkinter import * import tkMessageBox import Tkinter import os import random #Declaracao de variaveis #vetores card=[] tot=[] #inteiros result=0 vr=0 #Dicionario bancos=dict([('B.Boavista',4231), ('WCard Bradesco',4551), ('Cl.InternetWorld Unibanco',4011), ('Amex',3766), ('Bradesco',4290), ('American Express',4091), ('Itau Mastercard',5390), ('Unibanco',3622), ('Mastercard',5150), ('BB',4001), ('MBNA Discover',6013), ]) #Funcoes def gerar(prefixo): r=0 i=0 s="abc" x=0 global card while i < 4: s=repr(prefixo) x=int(s[i:i+1],10) #print x card.insert(i,x) i=i+1 while i < 15: r=random.uniform(0,9) r=r//1 card.append(int(r)) i = i + 1 return card def testar(cartao): global result global card global tot global vr i=0 x=0 while(i<15): y=cartao[i] if(i+1%2==0): result=result+y elif(i+1%2!=0 and y*2>9): result=result+(y*2-9) else: result=result+y*2 i=i+1 j=0 y=result while (y%10 != 0): j=j+1 y=y+1 #print j card.append(j) return cartao def formato(cartao): i=0 y='' card='' card=''.join(str(cartao)) card=card.replace(",","") card=card.replace("[","") card=card.replace("]","") card=card.replace(" ","") card=card[0:4]+'-'+card[4:8]+'-'+card[8:12]+'-'+card[12:16] return card def final(prefixo): x=formato(testar(gerar(prefixo))) return x def rotina(): global card card=[] p=Lista.get(Lista.curselection()) cod=final(bancos[p]) Texto.insert(END,cod+'\n') top = Tk() top.title('Gerador de cartoes') var = StringVar() label = Label( top, textvariable=var) var.set("Selecione o banco") Lista = Listbox(top, width=50) for itens in bancos: Lista.insert(END,itens) Texto=Text(top,state=NORMAL,height=15,width=50) Botao = Tkinter.Button(top, text ="Gerar", command=rotina) label.pack(padx=15,pady=15) Lista.pack(padx=15,pady=15) Texto.pack(padx=15,pady=15) Botao.pack(padx=15,pady=15) top.mainloop()
Script Python de orçamento pessoal
Programa para derivação de funções matemáticas polinomiais
Compressão de série numérica em Python
Gerador de referência cruzada de texto
Validador de cartão de crédito
Nenhum comentário foi encontrado.
Desktop Linux em alta: novos apps, distros e privacidade marcam o sábado
IA chega ao desktop e impulsiona produtividade no mundo Linux
Novos apps de produtividade, avanços em IA e distros em ebulição agitam o universo Linux
Desktop Linux ganha novos apps enquanto IA invade o noticiário
Blender 5.0 Beta, Firefox 144 e avanço da IA dominam o dia no mundo Linux
Como mudar o nome de dispositivos Bluetooth via linha de comando
Adicionando o repositório backports no Debian 13 Trixie
Baixar jogos Independentes para Ubuntu [RESOLVIDO] (4)
PIP3 - erro ao instalar módulo do mariadb para o Python (1)
Linux x Plataformas de Trading - um problema (in-)solúvel? (4)