激情久久久_欧美视频区_成人av免费_不卡视频一二三区_欧美精品在欧美一区二区少妇_欧美一区二区三区的

腳本之家,腳本語言編程技術及教程分享平臺!
分類導航

Python|VBS|Ruby|Lua|perl|VBA|Golang|PowerShell|Erlang|autoit|Dos|bat|

服務器之家 - 腳本之家 - Python - python實現盲盒抽獎功能(減庫存)

python實現盲盒抽獎功能(減庫存)

2022-01-05 00:22卿本佳人_奈何 Python

本文主要介紹了python實現盲盒抽獎功能,文中通過示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下

案例名稱:盲盒抽獎

案例描述:
某比賽共設三個獎項,分別是:一等獎、二等獎、三等獎,
一等獎的獎品有三種選擇:電飯煲、空調、洗衣機,
二等獎的獎品有三種選擇:球鞋、手表、滑板,
三等獎的獎品有三種選擇:對聯、手袋、鈣片

現需要編寫一個函數,函數中設置一個參數,該參數用來接收對應獎項的字符串。
即:如果參數值等于‘一等獎",則返回對應獎項下可選擇獎品的任意一個,從而實現盲盒抽取效果。
如果參數值的字符串不是一等獎、二等獎或者三等獎,則直接返回輸入有誤,沒有該獎項字樣。比如:參數值等于‘四等獎",則直接返回輸入有誤,沒有該獎項。
當抽出獎項后,相應庫存減一,如果獎項庫存為零時,返回沒有獎品了

代碼實現如下:

#猜盲盒
import random
#用字典嵌套字典的形式存儲所有獎品信息
w = {
    "一等獎": {
        "電飯煲": 2,
        "空調": 1,
        "洗衣機": 1
    },
    "二等獎": {
        "球鞋": 2,
        "手表": 5,
        "滑板": 3
    },
    "三等獎": {
        "對聯": 4,
        "手袋": 2,
        "鈣片": 3
    }
}


def lottery_plus(level=None):
    
    if level == "一等獎": 
        w_num = w.get("一等獎")  # 庫存字典 {"電飯煲":2, "空調":1, "洗衣機":1}
        jackpot = []  # 獎池:誰的庫存不為0進獎池 ["電飯煲","空調","洗衣機"]
        # 誰的庫存不為0進獎池
        for k in w_num.keys():  # 遍歷["電飯煲","空調","洗衣機"]
            if w_num.get(k) != 0:  # 如果庫存不為0
                jackpot.append(k)  # 進獎池 [].append("電飯煲")
        try:
            result = random.choice(jackpot) #隨機抽取一個獎品
            # 庫存-1
            w.get("一等獎")[result] -= 1
            print("一等獎池:", end=" ")
            print(jackpot)
            return "恭喜獲得一等獎" + result
        except:
            return "很遺憾,一等獎沒有了"  #random.choice([]) 傳入空的列表時會報錯,列表為空時說明獎品已經都抽走了,所有獎品庫存為零
        
    elif level == "二等獎":  
        w_num = w.get("二等獎")  
        jackpot = []  
        # 誰的庫存不為0進獎池
        for k in w_num.keys():  
            if w_num.get(k) != 0:
                jackpot.append(k)  
        try:
            result = random.choice(jackpot)
            # 庫存-1
            w.get("二等獎")[result] -= 1
            print("二等獎池:", end=" ")
            print(jackpot)
            return "恭喜獲得二等獎" + result
        except:
            return "很遺憾,二等獎沒有了"
        
    elif level == "三等獎": 
        w_num = w.get("三等獎")  
        jackpot = []  
        # 誰的庫存不為0進獎池
        for k in w_num.keys():  
            if w_num.get(k) != 0: 
                jackpot.append(k)  
        try:
            result = random.choice(jackpot)
            # 庫存-1
            w.get("三等獎")[result] -= 1
            print("三等獎池:", end=" ")
            print(jackpot)
            return "恭喜獲得三等獎" + result
        except:
            return "很遺憾,三等獎沒有了"
    else:
        return "沒有獲獎"

下面是調用函數的結果:

python實現盲盒抽獎功能(減庫存)

python實現盲盒抽獎功能(減庫存)

到此這篇關于python實現盲盒抽獎功能(減庫存)的文章就介紹到這了,更多相關python 盲盒抽獎內容請搜索服務器之家以前的文章或繼續瀏覽下面的相關文章希望大家以后多多支持服務器之家!

原文鏈接:https://blog.51cto.com/u_5839280/3831231

延伸 · 閱讀

精彩推薦
主站蜘蛛池模板: 美国av在线免费观看 | 久草在线观看福利 | 国产亚洲精品久久久久婷婷瑜伽 | 欧美色爱综合 | 91福利社在线 | 黄色网电影 | 色妞视频男女视频 | 国产精品久久久久久影院8一贰佰 | 亚洲第一综合 | 国产午夜精品久久久久久免费视 | 日日综合 | 88xx成人精品视频 | 成人午夜视频免费在线观看 | av免费在线观看av | japanese末成年free | 国外成人在线视频网站 | 欧美一级黄色录像片 | 成人资源在线 | 操碰| 爱看久久| 啊~用cao嗯力cao烂我视频 | 午夜小电影 | wwwav国产 | 欧美韩国日本在线 | 激情小说激情电影 | 少妇一级淫片免费放播放 | 成人午夜免费av | 久久99精品久久久久久小说 | 91九色精品 | 中日韩免费视频 | 亚洲免费永久 | 欧美日韩国产成人在线观看 | 国产精品成aⅴ人片在线观看 | 热99re久久免费视精品频软件 | 国产a级网站| 中文字幕国 | 91成人免费看 | fc2国产成人免费视频 | 久久色伦理资源站 | 国产精品久久久久久模特 | 久久久久久久一区二区三区 |