Python随机抽签工具 - 轻松选择幸运儿
Python随机抽签工具
这是一个用Python编写的随机抽签工具,可以方便地进行人员抽取,并提供剔除已抽中成员、显示成员列表等功能,适用于各种场景的随机选择需求。
使用方法:
- 运行程序。
- 按照提示输入成员姓名,以'0'结束输入。
- 输入命令进行操作,可用命令如下:
help:查看帮助信息pick:随机抽取一名成员remove:剔除已抽中成员show:显示成员列表和已抽中成员列表quit:退出程序
代码示例:
import random
# 初始化成员列表和已抽中成员列表
members = []
selected = []
# 文本输入函数,用于输入成员列表
def input_members():
print('请输入成员姓名(输入0以结束):')
while True:
member = input()
if member == '0':
break
members.append(member)
# 抽中剔除函数,用于将已抽中成员从成员列表中剔除
def remove_selected():
for s in selected:
if s in members:
members.remove(s)
# 抽签函数,用于随机抽取一个成员
def pick_member():
if len(members) == 0:
print('抽签已结束,所有成员都已被抽中!')
return False
selected_member = random.choice(members)
selected.append(selected_member)
members.remove(selected_member)
print('恭喜 ' + selected_member + ' 被抽中!')
return True
# 回显函数,用于显示成员列表和已抽中成员列表
def show_members():
print('成员列表:')
for member in members:
print(member)
print('已抽中成员列表:')
for member in selected:
print(member)
# 主程序
print('欢迎使用抽签工具!')
# 文本输入成员列表
input_members()
print('成员列表:')
print(members)
# 开始抽签
while True:
print('请输入命令(输入help查看帮助):')
command = input()
if command == 'quit':
print('退出程序。')
break
elif command == 'help':
print('可用命令:')
print(' help - 查看帮助')
print(' pick - 抽签')
print(' remove - 剔除已抽中成员')
print(' show - 显示成员列表和已抽中成员列表')
print(' quit - 退出程序')
elif command == 'pick':
if pick_member():
continue
else:
break
elif command == 'remove':
remove_selected()
print('已剔除已抽中成员!')
elif command == 'show':
show_members()
else:
print('无效命令,请重新输入!')
设计思路:
- 创建一个空的成员列表和已抽中成员列表。
- 定义一个函数
input_members(),用于输入成员列表。在函数中,使用一个循环接收用户输入的成员姓名,并将其添加到成员列表中,直到用户输入'0'为止。 - 定义一个函数
remove_selected(),用于将已抽中成员从成员列表中剔除。在函数中,遍历已抽中成员列表,如果成员在成员列表中存在,则将其从成员列表中移除。 - 定义一个函数
pick_member(),用于随机抽取一个成员。在函数中,首先判断成员列表是否为空,如果为空,则输出抽签已结束的提示。否则,使用random模块的choice()函数从成员列表中随机选择一个成员,将其添加到已抽中成员列表中,并从成员列表中移除。同时,输出被抽中的成员姓名。 - 定义一个函数
show_members(),用于显示成员列表和已抽中成员列表。在函数中,分别输出成员列表和已抽中成员列表的内容。 - 主程序中,首先输出欢迎信息,并调用
input_members()函数输入成员列表。然后,进入一个循环,接收用户输入的命令。如果用户输入'quit',则退出程序。如果用户输入'help',则输出可用命令的帮助信息。如果用户输入'pick',则调用pick_member()函数进行抽签。如果用户输入'remove',则调用remove_selected()函数剔除已抽中成员。如果用户输入'show',则调用show_members()函数显示成员列表和已抽中成员列表。如果用户输入其他无效命令,则输出无效命令的提示。
这样,我们就可以通过输入成员列表和命令来进行抽签操作,并可以随时查看成员列表和已抽中成员列表的状态。
原文地址: https://www.cveoy.top/t/topic/o2gN 著作权归作者所有。请勿转载和采集!