python3 实现口罩抽签的功能


Posted in Python onMarch 11, 2020

一、口罩抽签的逻辑

每个人产生对应的抽签码;
开始进行抽签;
公布中签结果;
这次案例写的比较简单,实际生产环境远比这复杂的多,但是万变不离其宗,基本逻辑还是差不多的……

二、口罩抽签的代码

import random


def get_random_code(num_code):
 """
 生成并返回随机验证码
 :param num_code: 随机验证码位数
 """
 list_code = []
 for i in range(num_code):
 # (1)随机生成三种字符
 # (1-1)随机生成0~9的数字
 num = str(random.randint(0, 9))
 # (1-2)随机生成小写字母
 lower_alphabet = chr(random.randint(97, 122))
 # (1-3)随机生成大写字母
 upper_alphabet = chr(random.randint(65, 90))
 # (2)再次随机抽取一个字符
 random_code = random.choice([num, lower_alphabet, upper_alphabet])
 # (3)保存随机抽取的字符
 list_code.append(random_code)
 return "".join(list_code)


def main():
 # 抽签总人数
 draw_num = 30
 # 中签的总人数
 draw_result_num = 10
 # 总抽签码列表
 draw_list = []
 # 中签的抽签码列表
 draw_result_list = []

 # (1)模拟生成抽签码,实际应该是每个人自己获取抽签码,现在用循环来模拟
 for i in range(draw_num):
 draw_code = get_random_code(6)
 while draw_code in draw_list:
  # 重复标签,需要重新生成抽签码
  draw_code = get_random_code(6)
 else:
  # 将生成的标签码加入列表
  draw_list.append(draw_code)

 # (2)模拟产生抽签的过程
 print("总共产生了{}个抽签码:{}".format(draw_num, draw_list))
 for i in range(draw_result_num):
 # NO1:这种方式会总共生成的抽签码给删除,所以还是采用其它方式
 # random_index = random.randint(0, len(draw_list)-1)
 # draw_result_list.append(draw_list.pop(random_index))
 # NO2:
 a = 0
 b = len(draw_list) - 1
 draw_code = draw_list[random.randint(a, b)]
 while draw_code in draw_result_list:
  # 重复标签,重新抽签
  draw_code = draw_list[random.randint(a, b)]
 else:
  # 将抽中的抽签码加入列表
  draw_result_list.append(draw_code)

 # (3)公布抽签结果
 print("{}位中签的抽签码如下:".format(draw_result_num))
 for item in draw_result_list:
 print(item)

if __name__ == '__main__':
 main()

控制台输出结果:

总共产生了30个抽签码:[‘511uCZ', ‘nAYBf8', ‘6I92sq', ‘206FxX', ‘1WMHCb', ‘sdJUMU', ‘e4A85p', ‘14Ae35', ‘n4xA44', ‘94i4eG', ‘L8981K', ‘11wtyN', ‘i5k5Xk', ‘7S8Tf7', ‘cGC4Ku', ‘f8dM40', ‘nBi958', ‘ELDVqz', ‘MQZFJQ', ‘hPPqh5', ‘Qr682E', ‘E2Z4X4', ‘IlmRJJ', ‘J71Pc1', ‘JPZpv8', ‘svAlm3', ‘9GaS9U', ‘v8378K', ‘116u2b', ‘x688xP']

10位中签的抽签码如下:

i5k5Xk
v8378K
e4A85p
J71Pc1
hPPqh5
1WMHCb
JPZpv8
sdJUMU
9GaS9U

MQZFJQ

到此这篇关于python3 实现 口罩抽签的功能的文章就介绍到这了,更多相关python3 口罩抽签内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Python 相关文章推荐
django上传图片并生成缩略图方法示例
Dec 11 Python
Python之web模板应用
Dec 26 Python
Python爬虫爬取一个网页上的图片地址实例代码
Jan 16 Python
Jupyter notebook在mac:linux上的配置和远程访问的方法
Jan 14 Python
Python制作exe文件简单流程
Jan 24 Python
PyQt5 窗口切换与自定义对话框的实例
Jun 20 Python
Python包,__init__.py功能与用法分析
Jan 07 Python
使用Python制作新型冠状病毒实时疫情图
Jan 28 Python
python 中关于pycharm选择运行环境的问题
Oct 31 Python
python爬虫搭配起Bilibili唧唧的流程分析
Dec 01 Python
python中温度单位转换的实例方法
Dec 27 Python
Python 恐龙跑跑小游戏实现流程
Feb 15 Python
python+selenium 脚本实现每天自动登记的思路详解
Mar 11 #Python
Django+boostrap 美化admin后台的操作
Mar 11 #Python
Windows 下python3.8环境安装教程图文详解
Mar 11 #Python
django admin后管定制-显示字段的实例
Mar 11 #Python
Python 3.8 新功能来一波(大部分人都不知道)
Mar 11 #Python
屏蔽Django admin界面添加按钮的操作
Mar 11 #Python
在Mac中PyCharm配置python Anaconda环境过程图解
Mar 11 #Python
You might like
真正面向对象编程:PHP5.01发布
2006/10/09 PHP
PHP 显示客户端IP与服务器IP的代码
2010/10/12 PHP
PHP面向对象概念
2011/11/06 PHP
整理php防注入和XSS攻击通用过滤
2015/09/13 PHP
Zend Framework动作助手Json用法实例分析
2016/03/05 PHP
Yii框架参数配置文件params用法实例分析
2019/09/11 PHP
javascript 日期时间 转换的方法
2013/02/21 Javascript
js实现异步循环实现代码
2016/02/16 Javascript
基于javascript实现最简单的选项卡切换效果
2016/05/16 Javascript
Javascript 函数的四种调用模式
2016/11/05 Javascript
实例解析angularjs的filter过滤器
2016/12/14 Javascript
JS求解三元一次方程组值的方法
2017/01/03 Javascript
windows下create-react-app 升级至3.3.1版本踩坑记
2020/02/17 Javascript
js实现选项卡效果
2020/03/07 Javascript
NodeJS模块Buffer原理及使用方法解析
2020/11/11 NodeJs
python中pandas.DataFrame排除特定行方法示例
2017/03/12 Python
对python中raw_input()和input()的用法详解
2018/04/22 Python
python远程连接MySQL数据库
2019/04/19 Python
Python实现密码薄文件读写操作
2019/12/16 Python
Python基于yaml文件配置logging日志过程解析
2020/06/23 Python
Pycharm操作Git及GitHub的步骤详解
2020/10/27 Python
Python创建简单的神经网络实例讲解
2021/01/04 Python
MCM英国官网:奢侈皮具制品
2017/04/18 全球购物
萨克斯第五大道英国:Saks Fifth Avenue英国
2019/04/01 全球购物
Tessabit日本:集世界奢侈品和设计师品牌的意大利精品买手店
2020/01/07 全球购物
华三通信H3C面试题
2015/05/15 面试题
Java中的基本数据类型所占存储空间大小固定的吗
2012/02/15 面试题
应聘教师推荐信
2013/10/31 职场文书
生物医学工程专业学生求职信范文分享
2013/12/14 职场文书
冰淇淋店的创业计划书
2014/02/07 职场文书
财务务虚会发言材料
2014/10/20 职场文书
工会经费申请报告
2015/05/15 职场文书
青年联谊会致辞
2015/07/31 职场文书
《大禹治水》教学反思
2016/02/22 职场文书
大学社团活动总结怎么写
2019/06/21 职场文书
详解NumPy中的线性关系与数据修剪压缩
2022/05/25 Python