写一个年会抽奖程序,有300名员工,要求一等奖3名,奖励泰国5日游,二等奖6名,奖励Iphone手机一部,三等奖30名,奖励 套套一盒,,规则,抽奖3次,第一次抽三等奖,第二次抽二等奖,第三次抽一等奖,每个员工限中奖一次,不能重复
时间: 2024-01-12 12:03:11 浏览: 148
好的,我会尽量帮您解决这个问题。这是一个简单的抽奖程序,将 300 个员工的名字存储在一个列表中。首先我们需要导入 random 模块,使用其中的 choice() 函数随机选择员工名字。具体的程序如下:
```python
import random
employees = ['员工1', '员工2', '员工3', ..., '员工300']
winners = []
# 抽取三等奖
for i in range(30):
winner = random.choice(employees)
winners.append(winner)
employees.remove(winner)
# 抽取二等奖
for i in range(6):
winner = random.choice(employees)
winners.append(winner)
employees.remove(winner)
# 抽取一等奖
for i in range(3):
winner = random.choice(employees)
winners.append(winner)
employees.remove(winner)
# 输出中奖名单
for i, winner in enumerate(winners):
if i < 3:
print(f"一等奖第{i+1}名:{winner},奖励泰国5日游")
elif i < 9:
print(f"二等奖第{i-2}名:{winner},奖励Iphone手机一部")
else:
print(f"三等奖第{i-8}名:{winner},奖励套套一盒")
```
这个程序的思路很简单,使用一个循环三次的 for 循环,先抽取三等奖,再抽取二等奖,最后抽取一等奖,中奖名单存储在一个列表 winners 中。在输出中奖名单时,使用一个 for 循环遍历 winners 列表,根据中奖名次输出奖品。重要的一点是,每次抽取时应该从 employees 列表中删除已经中奖的员工名字,保证每个员工仅能中奖一次,且员工不会重复中奖。
阅读全文