第 0001 题: 做为 Apple Store App 独立开发者,你要搞限时促销,为你的应用生成激活码(或者优惠券),使用 Python 如何生成 200 个激活码(或者优惠券)?
# -*- coding: utf-8 -*-
#激活码:RHLZP-4YKRB-HKC5C
import random,string
import mysql.connector
import mysql
import redis
code = string.digits+string.ascii_letters
#随机生成,n表示生成验证码n组,生成m组码
def to_code(m,n):
a = ""
for i in range(m):
for j in range(n):
b = "".join(random.sample(code,5))
if j == n-1:
a = a + b
else:
a = a + b + '-'
print(a)
a=""
if __name__ == '__main__':
to_code(200,5)
第 0002 题: 将 0001 题生成的 200 个激活码(或者优惠券)保存到 MySQL 关系型数据库中。
# -*- coding: utf-8 -*-
#激活码:RHLZP-4YKRB-HKC5C
import random,string
import mysql.connector
import mysql
import redis
code = string.digits+string.ascii_letters
#随机生成,n表示生成验证码n组,生成m组码
def to_code(m,n):
a = ""
for i in range(m):
for j in range(n):
b = "".join(random.sample(code,5))
if j == n-1:
a = a + b
else:
a = a + b + '-'
print(a)
# to_mysql(a,i)
a=""
#存入关系型数据库Mysql
def to_mysql(a,i):
conn = mysql.connector.connect(user='root', password='', database='code')
cursor = conn.cursor()
cursor.execute('show tables')
tb_list = []
for tb in cursor.fetchall():
tb_list.append(tb[0])
if 'code' not in tb_list:
cursor.execute('create table code(id VARCHAR(20) PRIMARY KEY ,code VARCHAR(200))')
cursor.execute('insert into code(id,code) values(%s,%s)',[i,a])
cursor.rowcount
conn.commit()
conn.close()
if __name__ == '__main__':
to_code(200,5)
第 0003 题: 将 0001 题生成的 200 个激活码(或者优惠券)保存到 Redis 非关系型数据库中。
# -*- coding: utf-8 -*-
#激活码:RHLZP-4YKRB-HKC5C
import random,string
import mysql.connector
import mysql
import redis
code = string.digits+string.ascii_letters
#随机生成,n表示生成验证码n组,生成m组码
def to_code(m,n):
a = ""
for i in range(m):
for j in range(n):
b = "".join(random.sample(code,5))
if j == n-1:
a = a + b
else:
a = a + b + '-'
print(a)
r.set(i, a)
a=""
#存入非关系型数据库Redis
r = redis.Redis(host='127.0.0.1',port=6379,db=0)
if __name__ == '__main__':
to_code(200,5)