大家好,我是36度道,人生苦短,我用python~
今天写了个 “抽奖” 的一个小练习,巩固下知识点, 在此记录下来。
本次 “ 抽奖 ” 练习,只用了一个random库,用于从多个奖品中随机获取一个,所以先导入这个库
import random
然后分别设置下一、二、三等奖以及对应的奖品和奖品对应的库存
reward_info = {
'一等奖': {'空调': 1, '洗衣机': 2, '扫地机': 3},
'二等奖': {'保温杯': 2, '热水壶': 3, '电饭锅': 2},
'三等奖': {'笔记本': 2, '书包': 2, '枕头': 3}
}
接着就是抽奖的核心代码,我将它封装在了一个函数里面
def random_reward(reward):
if reward not in reward_info.keys():
print('很遗憾,没有该奖项!')
else:
goods = reward_info[reward]
if not goods:
print('很遗憾,%s 的奖品已抽完!' % reward)
return None
reward_content = random.choice(list(goods.keys()))
print('恭喜抽中:%s' % reward_content)
reward_info[reward][reward_content] -= 1
if reward_info[reward][reward_content] == 0:
del reward_info[reward][reward_content]
if not reward_info[reward]:
print('%s 的奖品已抽完!' % reward)
return None
print('%s 的奖品还剩 %s' % (reward, str(reward_info[reward])))
最后就是调用函数了,这里为了看看三个奖项的输出情况,依次对三个奖项进行了输出,直到每个奖项的奖品都抽完为止
for i in ['一等奖', '二等奖', '三等奖']:
for _ in range(sum(list(reward_info[i].values()))):
print('-'*35)
random_reward(i)
一起来看下效果如何 如果看完还满意,就点个赞让我知道吧~
|