实现的功能主要有自动生成姓名以及自动生成一个九位数密码,用到了random.choice()方法,以及使用pymysql实现了与数据库的连接。
注意事项:
1.连接数据库时需要确保你自己已经打开了那个数据库并已经新建好了表格。
2.连接数据库时需要确保version是否能正常输出,能正常输出说明连接正常
3.使用事务处理机制来确保不会有错误数据被写入
from random import random
import sys
import random
import pymysql
firstName="赵钱孙李周吴郑王冯陈褚卫蒋沈韩杨朱秦尤许何吕施张孔曹严华金魏陶姜戚谢邹喻柏水窦章云苏潘葛奚范彭郎鲁韦昌马苗凤花方俞任袁柳酆鲍史唐费廉岑薛雷贺倪汤滕殷罗毕郝邬安常乐于时傅皮卞齐康伍余元卜顾孟平黄和穆萧尹姚邵湛汪祁毛禹狄"
man_lastname="承初义湛厚豪祖耀万玉建树羽寒顷阳忠琢引炫彬拂永湛邦幽冰勇悟闲轩余昊哲仕祖攀庆劲音奔乾循卫宸思商瑞冰宏岸凯亦震遥众华深敬邦煊田鹤融逸吟蒙理飘鑫苑乔硕欧方仕厚佑懿启释宇百峰肃廉益勇悟利诗存欢烈倚奥文翱余诚鉴谷恭瑜田锦"
woman_lastname="秀娟英华慧巧美娜静淑惠珠翠雅芝玉萍红娥玲芬芳燕彩春菊兰凤洁梅琳素云莲真环雪荣爱妹霞香月莺媛艳瑞凡佳嘉琼勤珍贞莉桂娣叶璧璐娅琦晶妍茜秋珊莎锦黛青倩婷姣婉娴瑾颖露瑶怡婵雁蓓纨仪荷丹蓉眉君琴蕊薇馨瑗琰韵融园艺咏滢枫芸菲寒伊亚宜"
psw="1234567890abcdefghijklmnopqrstu1234876590vwxyzQWERTYUIOPLKJHGFDSAZXCVBNM0987654321"
def get_name():
Name_first=firstName[random.choice(range(len(firstName)))]
sex = random.choice(range(2))
Name2 = ''
if sex>0:
Name1 = woman_lastname[random.choice(range(len(woman_lastname)))]
if random.choice(range(2))>0:
Name2 = woman_lastname[random.choice(range(len(woman_lastname)))]
return Name_first+Name1+Name2+"\t女\t"
else:
Name1 = man_lastname[random.choice(range(len(man_lastname)))]
if random.choice(range(2))>0:
Name2 = man_lastname[random.choice(range(len(man_lastname)))]
return Name_first+Name1+Name2+"\t男\t"
def get_password():
password = ''
for i in range(9):
password+=random.choice(psw)
return password
def lib_get_bank():
bank = random.choice(range(500,6200))
return bank
def lib_get_sold():
sold = random.choice(range(10,499))
return sold
def get_goodsname():
Name_list1 = ['冰箱','冰柜','电脑','洗衣机','蛋糕','笔记本']
name1 = str(random.choice(Name_list1))
Name_list2 = "QWERTYUIOPASDFGHJKLMZNXBCV"
name2 = random.choice(Name_list2)
return name1+name2
def get_introduct():
Name_list = "锟斤拷"
introduct = ''
for i in range(random.choice(range(3,6))):
introduct += Name_list
return introduct
#打开连接
db = pymysql.connect(host="121.37.185.55",user="root",password="82c15e7f4a6c393f",database="web")
cursor = db.cursor()
#验证连接
cursor.execute("SELECT VERSION()")
data = cursor.fetchone()
print("version:%s" %data)
def add_lib(num1):
for i in range(num1):
lib_get_userid = random.choice(range(0,6))
# lib_get_goodsid = random.choice(range(0,16))
list1 = [lib_get_userid,lib_get_sold(),lib_get_bank()]
sql = "INSERT INTO lib(userid,sold,bank)VALUES('%d','%d','%d')" %\
(list1[0],list1[1],list1[2])
try:
cursor.execute(sql)
db.commit()
except:
db.rollback()
db.close()
print("Lib数据已添加")
def add_user(num1):
# 对users表进行数据添加操作
for i in range(num1):
str = get_name() + get_password()
list1 = str.split()
sql = "INSERT INTO users(username,password,type)VALUES('%s','%s','0')" %\
(list1[0],list1[2])
try:
cursor.execute(sql)
db.commit()
except:
db.rollback()
db.close()
print("Users数据已添加")
def add_goods(num1):
for i in range(num1):
list1 = [get_goodsname(),get_introduct(),random.choice(range(113,3000))]
sql = "INSERT INTO goods(goodsname,introduct,price)VALUES('%s','%s','%d')" %\
(list1[0],list1[1],list1[2])
try:
cursor.execute(sql)
db.commit()
except:
db.rollback()
db.close()
print("Goods数据已添加")
def add_cart(num1):
for i in range(num1):
Num_List = "1234567890"
orderid = ""
for i in range(6):
orderid += str(random.choice(Num_List))
list1 =[orderid,random.choice(range(6,25)),random.choice(range(6,15)),random.choice(range(1,5)),random.choice(range(2))]
sql = "INSERT INTO cart(orderid,userid,goodsid,storeid,state)VALUES('%s','%d','%d','%d','%d')" %\
(list1[0],list1[1],list1[2],list1[3],list1[4])
try:
cursor.execute(sql)
db.commit()
except:
db.rollback()
db.close()
print("Cart数据已添加")
add_cart(int(input()))