基于Python實(shí)現(xiàn)商場(chǎng)抽獎(jiǎng)小系統(tǒng)
導(dǎo)語(yǔ)
嘿!下午好,木子來(lái)上新啦~
期待今天的內(nèi)容嘛?撓頭.jpg 日常等更新的小可愛(ài)們我來(lái)了??纯唇o大家?guī)?lái)了什么好東西
????????????????????????我是華麗的分隔符??????????????????????????
今天早上出門了一趟,話說(shuō)長(zhǎng)沙的天氣用一個(gè)字形容就是:”熱“、二個(gè)字形容:”真熱“、三個(gè)字形容:”熱死人“,據(jù)說(shuō)這幾天的溫度快達(dá)到40°了。大家記得做好防曬哦~

一出門就感受到了太陽(yáng)的擁抱,淚流滿面的做完事情之后跑到商場(chǎng)喝了杯茶顏,然后逛著街吹著免費(fèi)的空調(diào),巴適的很?。」渖虉?chǎng)的時(shí)候看到了轉(zhuǎn)盤抽獎(jiǎng)活動(dòng),簡(jiǎn)直不要太適合我這種想買買買(白嫖)的人。嘿嘿,嘛~說(shuō)了這么多的(廢話)話,揭開(kāi)謎底吧!我想你們等不及了
今天的主題就是給大家制作一款商場(chǎng)抽獎(jiǎng)小系統(tǒng),保證你喜歡,學(xué)了不后悔系列~

一、運(yùn)行環(huán)境
小編使用的環(huán)境:Python3、Pycharm社區(qū)版、Tkinter、PIL模塊部分自帶就不一一 展示啦。
模塊安裝:pip install -i https://pypi.douban.com/simple/+模塊名
二、素材(圖片等)
界面圖片的話可以自己準(zhǔn)備,這里不展示,想換什么背景可以自己隨便找一張圖就可哈。
但是要注意背景的大小尺寸問(wèn)題哈。

三、代碼展示
基本上每行代碼都有注釋的,這款代碼寫的挺簡(jiǎn)單的,有點(diǎn)兒小基礎(chǔ)的可以看的懂哈!
如沒(méi)基礎(chǔ)小白的話可以找我先拿一些簡(jiǎn)單的視頻,教你從0開(kāi)始學(xué)習(xí)吧!
import time
import threading
from PIL import Image
import tkinter as tk # 導(dǎo)入 tk庫(kù) 模塊
import random # 導(dǎo)入 隨機(jī)庫(kù) 模塊
root = tk.Tk() #初始化Tk() 建立一個(gè)窗口
root.title('簡(jiǎn)易商場(chǎng)抽獎(jiǎng)系統(tǒng)-顧木子吖') # 設(shè)置標(biāo)題
root.minsize(1000, 700)
photo = tk.PhotoImage(file="ETA.png") # file:圖片路徑
imgLabel = tk.Label(root, image=photo) # 把圖片整合到標(biāo)簽類中
imgLabel.pack(side=tk.RIGHT) # 右對(duì)齊
label1 = tk.Label(root, text='謝謝惠顧', bg='yellow', font=('Arial', 50))
label1.place(x=0, y=600, width=390, height=250)
label2 = tk.Label(root, text='1000優(yōu)惠券', bg='yellow', font=('Arial', 50))
label2.place(x=0, y=10, width=390, height=250)
label3 = tk.Label(root, text='謝謝惠顧', bg='yellow', font=('Arial', 50))
label3.place(x=390, y=10, width=390, height=250)
label4 = tk.Label(root, text='蘋果手機(jī)', bg='yellow', font=('Arial', 50))
label4.place(x=780, y=10, width=390, height=250)
label5 = tk.Label(root, text='再來(lái)一次', bg='yellow', font=('Arial', 50))
label5.place(x=1170, y=10, width=390, height=250)
label6 = tk.Label(root, text='謝謝惠顧', bg='yellow', font=('Arial', 50))
label6.place(x=1560, y=10, width=390, height=250)
label7 = tk.Label(root, text='5000優(yōu)惠券', bg='yellow', font=('Arial', 50))
label7.place(x=1560, y=600, width=390, height=250)
label8 = tk.Label(root, text='謝謝惠顧', bg='yellow', font=('Arial', 50))
label8.place(x=1170, y=600, width=390, height=250)
label9 = tk.Label(root, text='一臺(tái)小汽車', bg='yellow', font=('Arial', 50))
label9.place(x=780, y=600, width=390, height=250)
label10 = tk.Label(root, text='再來(lái)一次', bg='yellow', font=('Arial', 50))
label10.place(x=390, y=600, width=390, height=250)
label11 = tk.Label(root, text='顧木子吖', bg='white', font=('Arial', 20))
label11.place(x=1250, y=900, width=700, height=100)
# 將所有抽獎(jiǎng)選項(xiàng)添加到列表
things = [label1, label2, label3, label4, label5, label6, label7, label8, label9, label10]
# 獲取列表的最大索引值
maxvalue = len(things) - 1
# 設(shè)置起始值為隨機(jī)整數(shù)
starts = random.randint(0, 6)
# 是否停止標(biāo)志
notround = False
# 定義滾動(dòng)函數(shù)
def round():
t = threading.Thread(target=startup) #啟動(dòng)start
t.start()
# 定義開(kāi)始函數(shù)
def startup():
global starts
global notround
while True:
# 檢測(cè)停止按鈕是否被按下
if notround == True:
notround = False
return starts
# 程序延時(shí)
time.sleep(0.017)
# 在所有抽獎(jiǎng)選項(xiàng)中循環(huán)滾動(dòng)
for i in things:
i['bg'] = 'lightSkyBlue' #開(kāi)始時(shí) 底色變成天藍(lán)
things[starts]['bg'] = 'red' #滾動(dòng)框?yàn)?紅色
starts += 1
if starts > maxvalue:
starts = 0
# 定義停止函數(shù)
def stops():
global notround # notround 為全局變量
global starts
notround = True #停止標(biāo)志位
if starts == 1: # 如果抽中“簡(jiǎn)易四軸”就跳轉(zhuǎn)為“謝謝惠顧”【奸商^_^】
starts = 2
# 設(shè)置啟動(dòng)按鍵 背景文本為“RUN” 底色為“天藍(lán)” 字體“Arial” 字體大小“50” 回調(diào)函數(shù)command 為【滾動(dòng)】
btn1 = tk.Button(root, text='RUN', bg='lightSkyBlue', font=('Arial', 50), command=round)
#設(shè)置按鍵坐標(biāo)
btn1.place(x=800, y=850, width=200, height=200)
# 設(shè)置停止按鍵 背景文本為“RUN” 底色為“紅色” 字體“Arial” 字體大小“50” 回調(diào)函數(shù)command 為【停止】
btn2 = tk.Button(root, text='STOP', bg='red', font=('Arial', 50), command=stops)
#設(shè)置按鍵坐標(biāo)
btn2.place(x=1000, y=850, width=200, height=200)
?四、效果展示
1)界面效果
這個(gè)程序界面比較大,截圖之后科能看的不是很清楚,大家可以自己運(yùn)行看的清楚些。

2)RUN運(yùn)行
鼠標(biāo)點(diǎn)擊RUN運(yùn)行按住STOP停止,隨機(jī)抽獎(jiǎng)的哈。我運(yùn)氣還是不錯(cuò)的小汽車能帶回家,哈哈

這里沒(méi)有視頻展示,都是隨便截圖看下效果的哈,沒(méi)有那么好~
運(yùn)行起來(lái)是一直再輪流隨機(jī)閃動(dòng)的哈。
以上就是基于Python實(shí)現(xiàn)商場(chǎng)抽獎(jiǎng)小系統(tǒng)的詳細(xì)內(nèi)容,更多關(guān)于Python抽獎(jiǎng)系統(tǒng)的資料請(qǐng)關(guān)注腳本之家其它相關(guān)文章!
相關(guān)文章
python flask實(shí)現(xiàn)分頁(yè)的示例代碼
這篇文章主要介紹了python flask實(shí)現(xiàn)分頁(yè)的示例代碼,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2018-08-08
跟老齊學(xué)Python之集成開(kāi)發(fā)環(huán)境(IDE)
IDE的全稱是:Integrated Development Environment,簡(jiǎn)稱IDE,也稱為Integration Design Environment、Integration Debugging Environment,翻譯成中文叫做“集成開(kāi)發(fā)環(huán)境”,在臺(tái)灣那邊叫做“整合開(kāi)發(fā)環(huán)境”。2014-09-09
python數(shù)據(jù)分析近年比特幣價(jià)格漲幅趨勢(shì)分布
這篇文章主要為大家介紹了python分析近年來(lái)比特幣價(jià)格漲幅趨勢(shì)的數(shù)據(jù)分布,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步2021-11-11
opencv用VS2013調(diào)試時(shí)用Image Watch插件查看圖片
本文主要介紹了opencv用VS2013調(diào)試時(shí)用Image Watch插件查看圖片,直接以圖片形式可視化了opencv中的Mat變量。感興趣的可以了解下2021-07-07
使用Python實(shí)現(xiàn)將list中的每一項(xiàng)的首字母大寫
今天小編就為大家分享一篇使用Python實(shí)現(xiàn)將list中的每一項(xiàng)的首字母大寫,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2019-06-06
Python+PIL實(shí)現(xiàn)批量在圖片上寫上自定義文本
Pillow 是一個(gè) Python 的圖像處理庫(kù),它是 Python Imaging Library (PIL) 的一個(gè)分支,并且增加了更多的功能,下面我們看看如何利用它實(shí)現(xiàn)批量在圖片上寫上自定義的文本吧2024-11-11
解決Pytorch 訓(xùn)練與測(cè)試時(shí)爆顯存(out of memory)的問(wèn)題
今天小編就為大家分享一篇解決Pytorch 訓(xùn)練與測(cè)試時(shí)爆顯存(out of memory)的問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2019-08-08

