问题描述: 做为 Apple Store App 独立开发者,你要搞限时促销,为你的应用生成激活码(或者优惠券),使用 Python 如何生成 200 个激活码(或者优惠券),并将生成的激活码保存到Redis中?

需求分析:

  1. 需求同《Python读书笔记-每日篇-20190219|激活码生成器》
  2. 激活码存储在Redis中

代码编写:

      编写Redis连接API:

#! /usr/bin/env python3
# Filename : myredis.pyconf = {'HOST':'192.168.9.130','PORT':6379,'DB':0
}import redisclass myredis(object):#redis连接池redis_pool = ''def __init__(self, host='127.0.0.1',port=6379,db=0):try:self.redis_pool = redis.ConnectionPool(host=host,port=port,db=db,decode_responses=True)except Exception as e:print("redis connection error:",e)raisedef insert_serial(self,serial):REDIS_ID = 'user:gifts'try:r = redis.StrictRedis(connection_pool = self.redis_pool)r.sadd(REDIS_ID,serial)except Exception as e:print("redis instance create error:",e)raisedef query_serial(self,serial):REDIS_ID = 'user:gifts'try:r = redis.StrictRedis(connection_pool = self.redis_pool)if r.sismember(REDIS_ID,serial):return Truereturn Falseexcept Exception as e:print("redis instance create error:",e)return True
if __name__ == "__main__":myrs = myredis(conf['HOST'],conf['PORT'],conf['DB'])myrs.insert_serial('1')        

产生需要的激活码generater3.py

#! /usr/bin/env python3
# Filename : generator.pyimport string,random
from com.lreis.daily import myredis
from com.lreis.random.random_test import rand#产生随机码的域
field = string.ascii_letters + string.digits     class generator(object):#激活码data = []#本次激活码需要数量need_num = 0#本次激活码生成数量cur_num = 0#激活码长度需求length = 0def __init__(self, length =16,need_num=100):self.length = lengthself.need_num = need_numdef generate(self):mr = myredis.myredis(myredis.conf['HOST'],myredis.conf['PORT'],myredis.conf['DB'])while self.cur_num < self.need_num:#生成一个随机码rand = self.__get_one() if mr.query_serial(rand):continuemr.insert_serial(rand)self.data.append(rand)self.cur_num +=1return self.datadef __get_one(self):rand = ''.join(random.sample(field,self.length)) while(rand in self.data):rand = random.sample(field,self.length)if __name__ == "__main__":print("[激活码]=>%s"%(str(rand)))return randif __name__ == "__main__":generator = generator()#生成100个激活码datas = generator.generate()print(datas)

Python读书笔记-每日篇-20190222|激活码生成器(redis存储)相关推荐

  1. Python读书笔记-每日篇-20190221|激活码生成器(mysql存储)

    问题描述: 做为 Apple Store App 独立开发者,你要搞限时促销,为你的应用生成激活码(或者优惠券),使用 Python 如何生成 200 个激活码(或者优惠券),并将生成的激活码保存到M ...

  2. Python读书笔记-每日篇-20190219|激活码生成器

    问题描述: 做为 Apple Store App 独立开发者,你要搞限时促销,为你的应用生成激活码(或者优惠券),使用 Python 如何生成 200 个激活码(或者优惠券)? 需求分析: 激活码数量 ...

  3. Python读书笔记-基础篇-1.万丈高楼平地起

    随着人工智能领域的兴起,Python可以说集万千宠爱于一身,成了炽手可热的香饽饽.Python作为脚本语言,简单易上手,受到了很多编程爱好的喜爱. 编程语言是相通的,简单是一时的,任何语言的存在都有他 ...

  4. 《重构-改善既有代码设计》读书笔记-重构篇

    2019独角兽企业重金招聘Python工程师标准>>> 重构定义 名词 对软件内部结构的一种调整,目的是在不改变软件可观察行为的前提下,提高其可理解性,降低其修改成本.--<重 ...

  5. 与孩子一起学编程python_与孩子一起学编程(Python读书笔记3)

    第十一章 嵌套与可变循环 Python 3.X里 print()函数默认是自动换行的,所以本章代码会有很多问题,实际上 print()函数里有一个默认参数 end, 默认情况下: end= " ...

  6. 计算机英语读书笔记,大学英文读书笔记范文英语读书笔记十篇带翻译.doc

    大学英文读书笔记范文英语读书笔记十篇带翻译 My Room This is my room. Near the window there is a desk. I often do my homewo ...

  7. Python自学笔记——基础篇

    本笔记参考视频为:https://www.bilibili.com/video/BV1ex411x7Em?p=101,有兴趣的可以直接移步B站 Python编程 Sec.1 第一个Python程序 1 ...

  8. 读书笔记第一篇:知乎高赞回答

    自从今年以来,生活发生了极大变化,自己也进入了30大关,开始奔四了.最近总觉得自己一事无成,无论物质还是精神上都没有得到满足,而且自己一个游戏程序员,越来越觉得逐渐被淘汰.所以想到的第一个挣扎的办法, ...

  9. VCS user guide读书笔记启发篇

    文章目录 引言 1.Getting Started 2.VCS MX flow 2.1 分析过程 2.2 综合过程 2.3 仿真过程 引言 本文用于总结阅读VCS user guide后的读书笔记,具 ...

最新文章

  1. unity, monoDevelop ide 代码提示不起作用的解决方法
  2. 154 万 AI 开发者用数据告诉你,中国 AI 如何才能弯道超车?| 中国 AI 应用开发者报告...
  3. 转载大神的 Linux查看物理CPU个数、核数、逻辑CPU个数
  4. activiti 工作流_activiti工作流引擎入门
  5. Qt Creator分析函数执行
  6. 863. 二叉树中所有距离为 K 的结点
  7. 【前端 · 面试 】HTTP 总结(十一)—— HTTPS 概述
  8. 慎用javascript:void(0) 【转】
  9. joson返回数据库的时间格式在前台用js转换
  10. 面试题:什么叫2B树
  11. centos安装宝塔跳过绑定手机号
  12. 从简单的线性方程开始了解Paddle Fluid 的全连接层 FC
  13. 滴答(DiDa)-客户端体验版上线了
  14. c++ sprintf
  15. java中的反射机制是什么
  16. Linux系统:基础IO
  17. Windows API CreateFile WriteFile 操作文件追加写入 解决中文乱码
  18. 骂人的到底是些什么人
  19. layui框架是什么?
  20. wordpress主题有哪些,wordpress主题推荐

热门文章

  1. CV | GauGan 论文学习:Semantic Image Synthesis with Spatially-Adaptive Normalization
  2. html实现浪漫的爱情日记(附源码)
  3. hdu 逃生_从办公室逃生(Python简介)
  4. Discuz!X3.2帖子标题限制80个字符的修改方法
  5. 华清远见-重庆中心-JavaWeb综合阶段技术总结
  6. Deep Learning Art: Neural Style Transfer(吴恩达课程)
  7. python爬猫眼电影正在热映的电影详情
  8. gg修改服务器钻石,六号特工GG修改金钱、钻石和基因等教程+免广告版本
  9. 百度bae php.ini,彩虹网络验证(BSPHP)
  10. 通向顾客潜意识之路(下)