Python随机抽签工具 - 从成员列表中随机选择
Python 随机抽签工具
这是一个使用 Python 编写的简单随机抽签工具,可以从输入的成员列表中随机选择成员,并保存已抽中的成员到文件。
代码
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('无效命令,请重新输入!')
# 保存已抽中成员列表到文件
with open('selected.txt', 'w') as f:
for member in selected:
f.write(member + '\n')
print('已保存已抽中成员列表到文件 selected.txt!')
功能说明
- 输入成员列表: 程序会提示你输入成员姓名,以 0 结束输入。
- 随机抽签: 输入
pick命令后,程序会从成员列表中随机选择一个成员,并显示抽中的成员。 - 剔除已抽中成员: 输入
remove命令后,程序会将已抽中的成员从成员列表中剔除。 - 显示成员列表和已抽中成员列表: 输入
show命令后,程序会显示当前的成员列表和已抽中成员列表。 - 保存已抽中成员: 程序会将已抽中的成员列表保存到
selected.txt文件中。
使用方法
- 将代码保存为
.py文件。 - 运行代码。
- 按照提示输入成员姓名。
- 输入
pick命令进行抽签。 - 输入
quit命令退出程序。
注意
- 每次运行程序时,已抽中成员列表会清空。
- 如果成员列表为空,则无法进行抽签。
进一步改进
- 可以添加功能,例如限制抽签次数、记录抽签历史等等。
- 可以使用图形界面,使程序更加友好。
希望这个简单的抽签工具能够帮到你!
原文地址: https://www.cveoy.top/t/topic/oXGv 著作权归作者所有。请勿转载和采集!