Python——生成激活码并存入MySQL

#引入pymysql
import pymysql

#连接数据库
conn = pymysql.connect(user='root',password='password',database='test')
cursor = conn.cursor()
#执行 mysql语句
cursor.execute('''create table if not exists actcode(
    id smallint primary key,
    code varchar(50) not null);
    ''')
cursor.execute('delete from actcode')
#循环执行insert语句
for i,_code in enumerate(codelist):
    cursor.execute('insert actcode(id,code) values (%s,"%s")'%(i,_code))
conn.commit()
cursor.close()
conn.close()


#目标:200个16个大小写英文、数字组成的激活码 
#类似xxxx-xxxx-xxxx-xxxx
import random,string
CHRLIST=string.ascii_letters+string.digits
codelist=[]

def many_code(lens,n):   
    c=0
    while True:
        code=single_code(lens)
        if code in codelist:
            c=c
        else:
            codelist.append(code)
            c=c+1 
        if c==n:
            break
    print(len(codelist))
def single_code(lens):
    code=''
    for x in range(lens):
        i=random.randint(0,CHRLIST.__len__()-1)
        code+=CHRLIST[i]
    return '-'.join(code[i:i+4] for i in range(0,len(code),4))

#many_code(长度,激活码数量)
many_code(16,200)

首先,需要安装pymysql,pip3 install pymysql
注意,语句操作后要conn.commit()

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值