python制作抽獎(jiǎng)程序代碼詳解
實(shí)現(xiàn)制作抽獎(jiǎng)程序,需要認(rèn)知到我們可以看到一般抽獎(jiǎng)程序界面上是有很多按鈕的,比如中獎(jiǎng)區(qū)域,按鍵開(kāi)始區(qū)域等等,所以我們先要設(shè)置界面,然后把這些按鈕添加到界面中去,想必這對(duì)于學(xué)過(guò)tkinter的同學(xué)應(yīng)該不難。下面結(jié)合實(shí)現(xiàn)步驟:設(shè)計(jì)界面、利用循環(huán)、多線程來(lái)完成抽獎(jiǎng)程序設(shè)置吧。
實(shí)現(xiàn)代碼:
import random #導(dǎo)入內(nèi)置的random模塊list1=list(range(0,15)) #將range元素進(jìn)行列表轉(zhuǎn)換并賦值給列表list1print('抽獎(jiǎng)號(hào)碼是:',list1) #打印所有的參與抽獎(jiǎng)的號(hào)碼list2=[] #定義空列表list2,用來(lái)儲(chǔ)存中獎(jiǎng)號(hào)碼while len(list1)>0: result =random.choice(list1) #在列表list1里選擇抽取的號(hào)碼并賦值給result if result in list1 and result%2==0 and result%3==0: print('您的號(hào)碼是:{},恭喜您,您中一等獎(jiǎng)'.format(result)) list1.remove(result) list2.append(result) elif result%5==0: print('您的號(hào)碼是:{},恭喜您,您中了二等獎(jiǎng)'.format(result)) list1.remove(result) list2.append(result) elif result%3==0: print('您的號(hào)碼是:{},恭喜您,您中了三等獎(jiǎng)'.format(result)) list1.remove(result) list2.append(result) elif result%2!=0 and result%3!=0 and result%5!=0: print('您的號(hào)碼是:{},您未中獎(jiǎng)'.format(result)) elif result==list1[-1] or result==list1[0]: #當(dāng)抽取到列表list1最后一個(gè)或者第一個(gè)元素時(shí) print('您的號(hào)碼是:{},抽獎(jiǎng)結(jié)束'.format(result)) #打印號(hào)碼,并打印抽獎(jiǎng)結(jié)束 print('中獎(jiǎng)名單是:', list2) print('未中獎(jiǎng)名單是:', list1) Break
輸出結(jié)果:
抽獎(jiǎng)號(hào)碼是: [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14]您的號(hào)碼是:5,恭喜您,您中了二等獎(jiǎng)您的號(hào)碼是:10,恭喜您,您中了二等獎(jiǎng)您的號(hào)碼是:6,恭喜您,您中一等獎(jiǎng)您的號(hào)碼是:3,恭喜您,您中了三等獎(jiǎng)您的號(hào)碼是:13,您未中獎(jiǎng)您的號(hào)碼是:11,您未中獎(jiǎng)您的號(hào)碼是:14,抽獎(jiǎng)結(jié)束中獎(jiǎng)名單是: [5, 10, 6, 3]未中獎(jiǎng)名單是: [0, 1, 2, 4, 7, 8, 9, 11, 12, 13, 14]
實(shí)例擴(kuò)展:
import xlrd,random#導(dǎo)入讀取excel的模塊xlrd,取隨機(jī)數(shù)的模塊randomdata = xlrd.open_workbook('01.xls')#xlrd模塊中的函數(shù)table = data.sheet_by_index(0)#同上num = input('請(qǐng)輸入抽獎(jiǎng)人數(shù):')start = input('請(qǐng)輸入起始位置:')end = input('請(qǐng)輸入結(jié)束位置:')start = eval(start)#將字符串轉(zhuǎn)換為整數(shù)end = eval(end)num = eval(num)print('獲獎(jiǎng)名單為:')for i in range(num): idx = random.randint(start,end+1) tmp = table.cell_value(idx,1)#將讀取到的元素臨時(shí)存儲(chǔ)到tmp中 print(tmp)#輸出tmp中存儲(chǔ)的值
到此這篇關(guān)于python制作抽獎(jiǎng)程序代碼詳解的文章就介紹到這了,更多相關(guān)如何使用python制作抽獎(jiǎng)程序內(nèi)容請(qǐng)搜索好吧啦網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持好吧啦網(wǎng)!
相關(guān)文章:
1. 利用promise及參數(shù)解構(gòu)封裝ajax請(qǐng)求的方法2. Nginx+php配置文件及原理解析3. windows服務(wù)器使用IIS時(shí)thinkphp搜索中文無(wú)效問(wèn)題4. .NET中l(wèi)ambda表達(dá)式合并問(wèn)題及解決方法5. JSP數(shù)據(jù)交互實(shí)現(xiàn)過(guò)程解析6. 淺談python出錯(cuò)時(shí)traceback的解讀7. python matplotlib:plt.scatter() 大小和顏色參數(shù)詳解8. Ajax實(shí)現(xiàn)表格中信息不刷新頁(yè)面進(jìn)行更新數(shù)據(jù)9. Python importlib動(dòng)態(tài)導(dǎo)入模塊實(shí)現(xiàn)代碼10. ASP 信息提示函數(shù)并作返回或者轉(zhuǎn)向
