实现制作抽奖程序,需要认知到我们可以看到一般抽奖程序界面上是有很多按钮的,比如中奖区域,按键开始区域等等,所以我们先要设置界面,然后把这些按钮添加到界面中去,想必这对于学过tkinter的同学应该不难。下面结合实现步骤:设计界面、利用循环、多线程来完成抽奖程序设置吧。
实现代码:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
|
import random #导入内置的random模块
list1 = list ( range ( 0 , 15 )) #将range元素进行列表转换并赋值给列表list1
print ( "抽奖号码是:" ,list1) #打印所有的参与抽奖的号码
list2 = [] #定义空列表list2,用来储存中奖号码
while len (list1)> 0 :
result = random.choice(list1) #在列表list1里选择抽取的号码并赋值给result
if result in list1 and result % 2 = = 0 and result % 3 = = 0 :
print ( "您的号码是:{},恭喜您,您中一等奖" . format (result))
list1.remove(result)
list2.append(result)
elif result % 5 = = 0 :
print ( "您的号码是:{},恭喜您,您中了二等奖" . format (result))
list1.remove(result)
list2.append(result)
elif result % 3 = = 0 :
print ( "您的号码是:{},恭喜您,您中了三等奖" . format (result))
list1.remove(result)
list2.append(result)
elif result % 2 ! = 0 and result % 3 ! = 0 and result % 5 ! = 0 :
print ( "您的号码是:{},您未中奖" . format (result))
elif result = = list1[ - 1 ] or result = = list1[ 0 ]: #当抽取到列表list1最后一个或者第一个元素时
print ( "您的号码是:{},抽奖结束" . format (result)) #打印号码,并打印抽奖结束
print ( "中奖名单是:" , list2)
print ( "未中奖名单是:" , list1)
Break
|
输出结果:
抽奖号码是: [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14]
您的号码是:5,恭喜您,您中了二等奖
您的号码是:10,恭喜您,您中了二等奖
您的号码是:6,恭喜您,您中一等奖
您的号码是:3,恭喜您,您中了三等奖
您的号码是:13,您未中奖
您的号码是:11,您未中奖
您的号码是:14,抽奖结束
中奖名单是: [5, 10, 6, 3]
未中奖名单是: [0, 1, 2, 4, 7, 8, 9, 11, 12, 13, 14]
实例扩展:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
|
import xlrd,random #导入读取excel的模块xlrd,取随机数的模块random
data = xlrd.open_workbook( "01.xls" ) #xlrd模块中的函数
table = data.sheet_by_index( 0 ) #同上
num = input ( "请输入抽奖人数:" )
start = input ( "请输入起始位置:" )
end = input ( "请输入结束位置:" )
start = eval (start) #将字符串转换为整数
end = eval (end)
num = eval (num)
print ( "获奖名单为:" )
for i in range (num):
idx = random.randint(start,end + 1 )
tmp = table.cell_value(idx, 1 ) #将读取到的元素临时存储到tmp中
print (tmp) #输出tmp中存储的值
|
到此这篇关于python制作抽奖程序代码详解的文章就介绍到这了,更多相关如何使用python制作抽奖程序内容请搜索服务器之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持服务器之家!
原文链接:https://www.py.cn/jishu/gaoji/22971.html