1.要求
某公司有1000员工,开年会抽奖,奖项如下:
一等奖 3名:7日三亚游
二等奖6名:iPhone14手机
三等奖30名:100元购物卡
规则:
1.共抽3次,第一次抽3等奖,第2次抽2等奖,第3次压轴抽1等奖2.每个员工限中奖一次,不能重复
2.解题思路
1.生成一个员工列表,用random模块从里面取随机值
2.取完值之后,立刻从员工大列表里把中奖人删掉,即可防止其再次中奖
3.代码参考
下面展示一些 内联代码片
。
import random
employee_ID = []
count = 0
for i in range(1,301):
if i < 10:
employee_ID.append(f'00{i}')
elif i < 100:
employee_ID.append(f'0{i}')
else:
employee_ID.append(f'{i}')
def show():#显示抽奖信息
print('年会抽奖,奖励如下:')
print('一等奖3名:7日三亚游')
print('二等奖6名:iPhone14手机')
print('三等奖30名:100元购物卡')
def luck():#抽取幸运员工
luckdog = []
if count == 0:
for i in range(30):
item = random.choice(employee_ID)
luckdog.append(item)
employee_ID.remove(item)
elif count == 1:
for i in range(6):
item = random.choice(employee_ID)
luckdog.append(item)
employee_ID.remove(item)
else:
for i in range(3):
item = random.choice(employee_ID)
luckdog.append(item)
employee_ID.remove(item)
return luckdog
if __name__ == '__main__':
show()
count = 0
while(count<3):#进行三次抽奖,以三等奖,二等奖,一等奖开始抽奖,
if input('请输入go开始抽奖:') == 'go':
luckman = str(luck())
print(f'中奖人员编号是:',luckman)
count += 1
else:
input('请按提示输入:')
print('恭喜以上获奖人员!')