婷婷亚洲天堂影院-国产精品豆花视频www-伊人影院在线观看-日本少妇浓毛bbwbbwbbw-av网站观看-亚州欧美在线-91精品国产乱码久-任我爽精品视频在线播放-日本视频不卡-亚洲国产精品va在线观看香蕉-国产毛片乡下农村妇女-国产成人免费ā片在线观看老同学-欧美日韩免费在线-成人无码视频免费播放-色综合美女-免费毛片av

電子開發網

電子開發網電子設計 | 電子開發網Rss 2.0 會員中心 會員注冊
搜索: 您現在的位置: 電子開發網 >> 編程學習 >> Python >> 正文

用Python實現一個簡單的抽獎小程序

作者:佚名    文章來源:本站原創    點擊數:    更新時間:2023/5/19

寫在前面 

因為粉絲福利,所以想自己寫一個抽獎小程序,用于實現粉絲抽獎結果。

原本規劃的比較理想:

實時拉取評論用戶信息數據清洗,數據去重存儲評論用戶信息前端酷炫的展示效果

實現結果 

哈哈,但是理想是豐滿的,現實是骨感的,加上最近比較忙,就簡單寫了一下,實現了:

用戶數據拉取數據清洗,數據去重中獎數據抽取

總體算后端實現了50%吧,前端0%  ,哈哈~~~后面有時間了再進一步吧!😁😁😁

1 數據拉取

用Python 實現的,以下為相關代碼。使用過程中,有點報錯,最終使用postman,手動獲取的,

哈哈哈~~~后面再優化吧

import json
import requests
def request_get(url, param):
    fails = 0
    while True:
        try:
            if fails >= 20:
                break
            ret = requests.get(url=url, params=param, timeout=10)
            if ret.status_code == 200:
                text = json.loads(ret.text)
            else:
                continue
        except:
            fails += 1
            print('網絡連接出現問題, 正在嘗試再次請求: ', fails)
        else:
            break
    return text
def request_post(url, param):
    fails = 0
    while True:
        try:
            if fails >= 20:
                break
            # headers = {'content-type': 'application/json'}
            ret = requests.post(url, json=param, timeout=10)
            if ret.status_code == 200:
                text = json.loads(ret.text)
            else:
                continue
        except:
            fails += 1
            print('網絡連接出現問題, 正在嘗試再次請求: ', fails)
        else:
            break
    return text

數據接口不適合放出來,就不放啦~😁

用戶數據不知道合不合適放出來,也就不放啦~😁

2 數據清洗、去重

因為我原本想的是要做一個酷炫的前端,也有找到了一些不錯的案例,3D抽獎的效果,需要用戶頭像,就在清洗數據的同時,也存儲了用戶頭像的鏈接,以下是完整代碼:

import json
def getData():
    with open("data.json", 'r') as f:
        temp = json.loads(f.read())
        templist = temp['data']['list']
        user = []
        for i in templist:
            temp={
                'nickName':i['info']['nickName'],
                'avatar':i['info']['avatar']
            }
            user.append(temp)
        result = [dict(t) for t in set([tuple(d.items()) for d in user])]
        print(result)
        print(len(result))
        return result
if __name__ == '__main__':
    getData()

這一步是重復數據去重 

 result = [dict(t) for t in set([tuple(d.items()) for d in user])]

3 中獎數據抽取

中獎名單抽取---完整代碼

import random
from giftchoose.userData import getdata
def getgift():
    num = getdata() # 用于存放抽獎用戶信息
    print("歡迎來到抽獎小程序!")
    print("參與抽獎的用戶如下:")
    for i in num:
        print(i)
    usernum = len(num)
    reward = 2
    usernum = int(usernum)
    reward = int(reward)
    resultList = []                         # 用于存放隨機數結果
    def generateRand(counter):
        tempInt = random.randint(0, usernum-1)     # 生成一個范圍內的臨時隨機數
        if(counter <= reward):                   # 先看隨機數的總個數是不是夠了,如果不夠
            if(tempInt not in resultList):  # 再檢查當前已經生成的臨時隨機數是不是已經存在
                resultList.append(tempInt)  # 如果不存在,則將其追加到結果resultList中
                counter += 1                # 然后將表示有效結果的個數加1
            generateRand(counter)           # 不管上面的if是否成立,都要遞歸。
    generateRand(1)                    # 調用遞歸函數,并給當前要生成的有效隨機數的個序號置為1
    prize = []                              # 用于存放中獎號碼
    # 將中獎號碼添加到結果prize中
    for j in range(reward):
        prize.append(num[resultList[j]])
    print("\n中獎用戶:")           # 輸出中獎結果
    for k in range(reward):
        print(prize[k], end="\n")
if __name__ == '__main__':
    getgift()

項目結構,太簡單了,其實也算不上項目了😁😁😁😁😁😁

 

python 相關知識點

list列表去重的方案

循環遍歷

old_list = [10, 1, 1, 2, 3, 4, 5, 1, 2, 3, 6, 7, 8, 8, 9, 10, 10]
def one():
    new_list = []
    for i in old_list:
        if i not in new_list:
            new_list.append(i)
    print(new_list)

使用dict:

使用list項作為鍵創建dict,會自動刪除任何重復項,保留原順序,因為dict不能有重復的鍵。

old_list = [10, 1, 1, 2, 3, 4, 5, 1, 2, 3, 6, 7, 8, 8, 9, 10, 10]
def useDict():
    new_list = list(dict.fromkeys(old_list))
    print(new_list)

使用set:將list轉化為set再轉化為list,set有自動去重功能,缺點:新的list不保證原順序。

def useSet():
    new_list = list(set(old_list))
    print(new_list)

使用set 并保證順序:不能保證順序,咱就給他加個原來的key,這樣不就保障了嘛~

def keepOrder():
    new_list = list(set(old_list))
    new_list.sort(key=old_list.index)
    print(new_list)

運行結果

 

總結

到此這篇關于用Python實現一個簡單的抽獎小程序的文章就介紹到這了

Tags:python,編程學習  
責任編輯:admin
  • 上一篇文章:
  • 下一篇文章:
  • 請文明參與討論,禁止漫罵攻擊。 昵稱:注冊  登錄
    [ 查看全部 ] 網友評論
    關于我們 - 聯系我們 - 廣告服務 - 友情鏈接 - 網站地圖 - 版權聲明 - 在線幫助 - 文章列表
    返回頂部
    刷新頁面
    下到頁底
    晶體管查詢
    婷婷亚洲天堂影院-国产精品豆花视频www-伊人影院在线观看-日本少妇浓毛bbwbbwbbw-av网站观看-亚州欧美在线-91精品国产乱码久-任我爽精品视频在线播放-日本视频不卡-亚洲国产精品va在线观看香蕉-国产毛片乡下农村妇女-国产成人免费ā片在线观看老同学-欧美日韩免费在线-成人无码视频免费播放-色综合美女-免费毛片av
    <button id="4i884"></button>
  • <abbr id="4i884"><source id="4i884"></source></abbr>
  • <code id="4i884"><tr id="4i884"></tr></code>
  • <rt id="4i884"></rt>
    <li id="4i884"></li>
  • <rt id="4i884"><tr id="4i884"></tr></rt>
  • 日韩毛片在线免费看| 亚洲色图久久久| 国产精品动漫网站| 大桥未久一区二区| 91香蕉视频污版| cao在线观看| 亚洲美女性囗交| www.射射射| 公共露出暴露狂另类av| 高清av免费看| 久久精品午夜福利| 成人av一级片| 人妻熟妇乱又伦精品视频| a级片一区二区| 久久天天东北熟女毛茸茸| 午夜精品免费看| 国产高潮免费视频| 中文字幕天天干| 男女视频在线看| 伊人色在线观看| jizz欧美性11| xx欧美撒尿嘘撒尿xx| 韩国视频一区二区三区| 日韩a在线播放| 久久精品.com| 国内自拍视频网| 污污动漫在线观看| 不卡的在线视频| 在线播放 亚洲| 成年人视频大全| 国产911在线观看| 国产freexxxx性播放麻豆 | 粉色视频免费看| 亚洲精品免费一区亚洲精品免费精品一区| 可以免费在线看黄的网站| 男人透女人免费视频| 日本在线观看免费视频| 嫩草视频免费在线观看| 熟妇熟女乱妇乱女网站| 国产精品久久久久久久久电影网| youjizz.com在线观看| 大陆极品少妇内射aaaaa| 玩弄japan白嫩少妇hd| 欧美一级特黄aaa| 日韩亚洲欧美一区二区| 精品人妻一区二区三区四区在线| 日韩精品视频久久| 手机版av在线| 天天做天天躁天天躁| 国产日产欧美视频| 91亚洲一区二区| 日本福利视频在线| 最新天堂在线视频| 日韩精品在线视频免费观看| 麻豆av免费在线| 香蕉视频色在线观看| 国产二区视频在线播放| 免费成人黄色大片| 欧美a在线视频| 91免费视频黄| 9久久婷婷国产综合精品性色| 性欧美18一19内谢| 亚洲人成无码www久久久| 超碰人人爱人人| 天天干天天玩天天操| 男人日女人视频网站| 日韩欧美国产片| aa在线免费观看| 日韩视频 中文字幕| 五月天中文字幕在线| 久久网站免费视频| 日韩一级特黄毛片| 吴梦梦av在线| 天天摸天天舔天天操| 欧美 日韩 国产一区| 国产午夜精品视频一区二区三区| 91看片就是不一样| 青草青青在线视频| 伊人再见免费在线观看高清版| 无人在线观看的免费高清视频| 六月婷婷激情网| 手机免费看av网站| 色七七在线观看| 日本免费一级视频| 国产97在线 | 亚洲| 日韩精品在线观看av| 一级黄色片播放| 色偷偷中文字幕| 深夜做爰性大片蜜桃| 亚洲一级免费在线观看| 亚洲天堂网一区| 久久午夜夜伦鲁鲁一区二区| 激情网站五月天| 亚洲乱码国产一区三区| 黑森林福利视频导航| jizzjizz国产精品喷水| 欧美一级视频免费看| 日本一区午夜艳熟免费| 丝袜人妻一区二区三区| www.射射射| 农村妇女精品一二区| www.浪潮av.com| 亚洲免费av一区二区三区| 欧美性猛交久久久乱大交小说| 免费观看精品视频| 黄色片在线免费| 超碰成人在线播放| 91手机视频在线| 人人妻人人澡人人爽欧美一区双| 国产精品久久久久7777| 男女av免费观看| 91 视频免费观看| 欧洲精品视频在线| 国产99久久九九精品无码| 日本熟妇人妻xxxxx| 最新国产黄色网址| 韩国黄色一级大片| 欧美一区二区三区爽大粗免费| 久久精品香蕉视频| 久久免费视频2| 日日碰狠狠添天天爽超碰97| 色婷婷综合久久久久中文字幕| 亚洲免费av一区| 18禁裸男晨勃露j毛免费观看| 免费午夜视频在线观看| 亚洲精品mv在线观看| 91视频 - 88av| 亚洲天堂2018av| 黄色一级片在线看| www.国产视频.com| 少妇av一区二区三区无码| 日韩精品视频一二三| 国产欧美日韩网站| 在线观看日本一区二区| 日韩精品 欧美| 激情在线观看视频| www.国产区| 国产免费一区二区视频| 亚洲精品手机在线观看| 337p粉嫩大胆噜噜噜鲁| 日本女人高潮视频| 天天干天天操天天玩| 欧美成人一区二区在线观看| 欧美一级免费在线观看| 精品亚洲一区二区三区四区| 3d动漫一区二区三区| 在线播放 亚洲| 黑人糟蹋人妻hd中文字幕| www.69av| 超碰在线资源站| 免费看涩涩视频| 波多野结衣天堂| 国产精品无码一本二本三本色| www成人免费| 18视频在线观看娇喘| 毛片毛片毛片毛片毛片毛片毛片毛片毛片| 国产性生活一级片| 五月天丁香花婷婷| а 天堂 在线| www.午夜av| 欧美视频国产视频| jizzzz日本| 久热精品在线播放| 中文字幕亚洲欧洲| 一路向西2在线观看| 99re精彩视频| 一本之道在线视频| 日韩在线不卡一区| 99九九精品视频| 中文字幕视频三区| 黄色一级片免费的| 成人不卡免费视频| 国产高清999| 日本国产中文字幕| 黄色成人在线看| 久草精品在线播放| 已婚少妇美妙人妻系列| 在线黄色免费观看| www.色.com| bt天堂新版中文在线地址| 国产夫妻自拍一区| 成人羞羞国产免费网站| 日本a√在线观看| 污网站在线免费| 在线无限看免费粉色视频| 一二三四中文字幕| 黄色一级片播放| jizz大全欧美jizzcom| 一区二区三区四区久久| 性欧美大战久久久久久久| 欧洲av无码放荡人妇网站| 欧美伦理片在线看| 99精品视频网站| 男的插女的下面视频| 国产情侣av自拍| 特黄视频免费观看| 国产二区视频在线| 中文字幕22页| 欧美在线一区视频| 涩多多在线观看|