python 每日一练之0001题和0002题➕mysql简单学习

前言

自己的编程能力太不足了,最近开始每日一练,望大佬勿喷,学习记录下

正文

第 0001 题: 做为 Apple Store App 独立开发者,你要搞限时促销,为你的应用生成激活码(或者优惠券),使用 Python 如何生成 200 个激活码(或者优惠券)?

第 0002 题: 将 0001 题生成的 200 个激活码(或者优惠券)保存到 MySQL 关系型数据库中。

先看题目吧,生成激活码当然要用到随机数之类的没什么可讲的直接贴上代码然后保存

# -*- coding: utf-8 -*-

import random
import string
import pymysql.cursors #因为用的python3所以用的就是这个库,因为听说pymysql取代了MYSQL

def yaoqing(number,length):
	for i in range(0,int(number)):
		code = ''
		for j in range(0,length):
			code = code+random.choice(string.ascii_letters)#string.ascii_letters是指所有的可打印的英文字母包括大写和小写的
		print i,code #我这里加了这一个是为了看一下对比下保存到数据库的和生成的有什么区别
		save(i,code)
def save(i,code):
	connect = pymysql.connect(host='localhost',port=3306,user='root',passwd='woaini123',db='yaoqing')#链接数据库
        cursor = connect.cursor() #设定浮游指针
	sql = "insert into t1(id, code) VALUES ('%d', '%s')"%(i+1,code) #插入数据
	cursor.execute(sql) #执行sql里的操作
        connect.commit() # 将数据提交至数据库
	connect.close() #关闭连接
if __name__ == '__main__':
	number = input("请输入数量")
	length = input("请输入长度") #改了下题目这样可以自定义自己要生成多少个数可变性大一些
	yaoqing(number,length)

拓展

因为是小白,不知道很多数据的操作于是只能边学边做

首先是mysql的安装我是mac所以用的是brew install mysql

然后登陆下 mysql -u root -p '你的密码'

接着是创建一个数据库可供我链接 CREATE DATADABASE 库名; #注意分号我之前以为mysql是个命令行不用分号走了好多弯路

然后use 库名; 进入库

创建table  create table 名字(id int(4) ,code varchar(8)) 表示4个字节整数和8个字节的字符串

然后一个我们需要链接的数据库就做好接着就是哪个代码啦

当然创建啦还要删除: 删除库 DROP DATABASE 库名;(这些指令小写也是没有关系的) 删除table:DROP DATABASE 名;(当然这个是要在databas的目录下啦)

结尾

边学边做。。其中各种错误的心酸不言而喻

贴一下题目地址:

https://github.com/Yixiaohan/show-me-the-code

猜你喜欢

转载自blog.csdn.net/w12315q/article/details/80639294