python人名抽签_python3 实现口罩抽签的功能
一、口罩抽签的逻辑
每个人产生对应的抽签码;
开始进行抽签;
公布中签结果;
这次案例写的比较简单,实际生产环境远比这复杂的多,但是万变不离其宗,基本逻辑还是差不多的……
二、口罩抽签的代码
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人名抽签_python3 实现口罩抽签的功能相关推荐
- python抽签代码_python3 实现口罩抽签的功能
一.口罩抽签的逻辑 每个人产生对应的抽签码: 开始进行抽签: 公布中签结果: 这次案例写的比较简单,实际生产环境远比这复杂的多,但是万变不离其宗,基本逻辑还是差不多的-- 二.口罩抽签的代码 impo ...
- 基于Python通过OpenCV实现的口罩识别系统理论篇
基于Python通过OpenCV实现的口罩识别系统理论设计篇 一.项目实现环境 基于Python 3.8.1版本 opencv-python 4.2.0.34版本 需要自己下载OpenCV的库文件,添 ...
- 一行Python代码能实现这么多丧心病狂的功能?(代码可复制)
最近看知乎上有一篇名为<一行 Python 能实现什么丧心病狂的功能?>(https://www.zhihu.com/question/37046157)的帖子,点进去发现一行Python ...
- python画并列柱状图-Python实现绘制双柱状图并显示数值功能示例
本文实例讲述了Python实现绘制双柱状图并显示数值功能.分享给大家供大家参考,具体如下: # -*- coding:utf-8 -*- #! python3 import matplotlib.py ...
- python 中文字符串截取,Python实现针对含中文字符串的截取功能示例
本文实例讲述了Python实现针对含中文字符串的截取功能.分享给大家供大家参考,具体如下: 对于含多字节的字符串,进行截断的时候,要判断截断处是几字节字符,不能将多字节从中分割,避免截断后乱码 下面给 ...
- python自增_如何在python语言实现自增和自减功能并显示结果
在python语言中,跟Java和JavaScript语言不一样,python中没有自增和自减功能,而Java和JavaScript中有.但是,python语言可以使用变量加1或减1替换.下面利用几个 ...
- python join函数_一行 Python 代码能实现这么多丧心病狂的功能?
最近看知乎上有一篇名为<一行 Python 能实现什么丧心病狂的功能?>(https://www.zhihu.com/question/37046157)的帖子,点进去发现一行Python ...
- 一行 Python 代码能实现这么多丧心病狂的功能?(代码可复制)
最近看知乎上有一篇名为<一行 Python 能实现什么丧心病狂的功能?>(https://www.zhihu.com/question/37046157)的帖子,点进去发现一行Python ...
- ubuntu下使用python将ppt转成图片_Ubuntu下使用Python实现游戏制作中的切分图片功能...
本文实例讲述了Ubuntu下使用Python实现游戏制作中的切分图片功能.分享给大家供大家参考,具体如下: why 拿到一个人物行走的素材,要用TexturePacker打包.TexturePacke ...
最新文章
- Javascript Array对象
- CodeForces - 897E Willem, Chtholly and Seniorious(珂朵莉树)
- java 类一定要声明成public_类和对象练习题
- Linux服务器部署邮件服务器详细操作文档
- MFC 定时器使用方式
- adpater里写toast_Android开发UI之Toast的使用
- 自定义SharePoint Webservice
- (转)javascript 内存泄露工具使用
- Mac Book Pro中idea常用快捷键
- nwjs macOS打包成dmg
- 湖南大学应用经济学考研考情与难度、参考书及上岸前辈备考经验
- php laravel日志报错,Laravel 文档阅读:错误 日志记录
- 史上最难的大学专业 计算机 土木建筑 医学,大学最易挂科的专业,智商不够别报考,不然很难毕业!...
- AS | 中大丁涛/田国宝等揭示口腔菌群的差异化输入塑造了与健康状况相关的两种肺型...
- 取消notepad++打开.bat文件
- 计算机网络:CSMA/CD 与 CSMA/CA
- 魔兽世界怀旧服2020年最新服务器列表,2020年2月15日魔兽世界怀旧服服务器的排队等待时间的真实数据...
- Mobile Edge Computing —— Paper List
- 人脸识别SeetaFace2原理与代码详解
- yagmail 发送html,PYTHON发送邮件YAGMAIL的简单实现解析