练习001-002

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

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

题目解析:
0001题就是随机产生200个激活码,我的方法比较简单,就是在一个长的字符串中随机抽取一定的数,组成一个新的字符串,即为随机码

0002题就是简单建立一个数据库,在建立一个表,表中只需要有id和随机码,然后插入数据就可以,将0001的代码,作为包导入,然后调用方法
代码如下:

#!/usr/bin python 
import random 

str="qwertyuiopasdfghjklzxcvbnm!@#$%^&*()_+-=1234567890"
a={}
def activation_code(num,long):   

    for i in range(1,num+1):
    b=[]
    for j in range(1,long+1):      
        b.append(random.choice(str))    
    a[i]=''.join(b)
    # 将列表转换成字符串 
    return a

if __name__=="__main__":
    c=activation_code(200,10) 
#!/usr/bin python 
import one_copy
import MySQLdb
c={}
values=[]
try:
        c=one_copy.activation_code(200,10)
        conn=MySQLdb.connect(host='localhost',user='root',passwd='qwer1234',port=3306)
        cur=conn.cursor()
        #cur.execute('create  database if not exists python')
        conn.select_db('python')
        #cur.execute('create table code(id int,info varchar(20))')
        for i in range(1,201):
                values.append((i,c[i]))
        cur.executemany('insert into code values(%s,%s)' ,values)
        conn.commit()
        cur.close()
        conn.close()
except MySQLdb.Error,e:
        print "Mysql Error %d: %s" %(e.args[0],e.args[1])

注意:001的代码要和002的代码要在同一个文件夹下,才可以直接导入
如果不在同意目录,可以采用以下代码,但这个代码要和002的放在一起

import os,sys
base_path=os.path.dirname(os.path.dirname(__file__))
sys.path.append(base_path)

001的结果
数据库中数据
( 写于2016年4月1日,http://blog.csdn.net/bzd_111

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
下面是 Java 的代码实现: ``` // 老师类 public class Teacher { private String name; private String gender; private int age; private String subject; public Teacher(String name, String gender, int age, String subject) { this.name = name; this.gender = gender; this.age = age; this.subject = subject; } public void teachStu(Student student) { System.out.println(this.name + "老师正在指导" + student.getName() + "同学学习" + this.subject); } } // 学生类 public class Student { private String id; private String name; private String gender; private int age; private Teacher teacher; public Student(String id, String name, String gender, int age, Teacher teacher) { this.id = id; this.name = name; this.gender = gender; this.age = age; this.teacher = teacher; } public void reportMess() { System.out.println("当前" + this.name + "同学给" + this.teacher.getName() + "班主任,反馈个人" + this.id + "-" + this.age + "信息"); } public String getName() { return this.name; } } // 测试类 public class Test { public static void main(String[] args) { Teacher wang = new Teacher("王老师", "女", 30, "数学"); Student xiaoming = new Student("001", "小明", "男", 12, wang); xiaoming.reportMess(); Teacher xiaoli = new Teacher("李老师", "男", 35, "语文"); Student xiaohong = new Student("002", "小红", "女", 13, xiaoli); xiaoli.teachStu(xiaohong); } } ``` 输出结果如下: ``` 当前小明同学给王老师班主任,反馈个人001-12信息 李老师老师正在指导小红同学学习语文 ```

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值