Python随机抽奖程序:使用random模块实现公平抽签
Python随机抽奖程序:使用random模块实现公平抽签
本程序使用Python的random模块实现一个简单的随机抽奖程序,能够从输入的成员列表中随机抽取指定数量的成员,并显示结果。
代码实现
import random
# 初始化成员列表和已抽中成员列表
members = []
selected = []
# 文本输入函数,用于输入成员列表
def input_members():
print('请输入成员姓名(输入0以结束):')
while True:
member = input()
if member == '0':
break
members.append(member)
# 程序主函数
def main():
input_members()
random.shuffle(members)
for i in range(len(members)):
selected.append(members.pop())
print('已抽中成员列表:', selected)
# 执行主函数
main()
代码解释
该程序包含以下函数和用途:
-
random:Python内置的随机数模块,用于生成随机数。 -
input_members():该函数用于从控制台输入成员列表。在函数内部,首先打印提示信息,接着通过while循环不断读取输入,直到输入为'0',循环结束。在每次循环中,将输入的成员姓名添加到members列表中。 -
main():程序的主函数,包含以下步骤:a. 调用
input_members()函数,输入成员列表。
b. 使用random模块的shuffle()函数,将成员列表随机排序。
c. 使用for循环,逐个从成员列表中抽取成员,并将其添加到selected列表中。在每次循环中,还要将已抽中成员从成员列表中删除,避免重复抽取。
d. 打印已抽中成员列表。
运行程序
运行程序后,会提示用户输入成员姓名,以'0'结束输入。程序会随机抽取所有成员,并显示已抽中成员的列表。
注意事项
- 程序中使用了
random.shuffle()函数,它会对列表进行随机排序。如果需要指定抽取数量,可以修改for循环的范围。 - 在循环中,使用
members.pop()函数删除已抽取的成员,确保不会重复抽取。
希望本程序能够帮助您进行简单的随机抽奖活动。
原文地址: https://www.cveoy.top/t/topic/oZ0r 著作权归作者所有。请勿转载和采集!