python实现的简单抽奖系统实例

yipeiwu_com6年前Python基础

本文实例讲述了python实现的简单抽奖系统。分享给大家供大家参考。具体实现方法如下:

#!/usr/bin/env python
#coding=utf-8
from Tkinter import *
import time
import random
class App:
  def __init__(self,master):
    frame = Frame(master)
    frame.pack()
    v = StringVar()
    self.e = Entry(frame,textvariable=v,bd='5')
    v.set('')
    self.v = v
    self.e.pack(padx=5)
    self.button1 = Button(frame,text = 'start',fg='red',command=self.start_hi)
    self.button1.pack(side=LEFT)
    self.button2 = Button(frame,text='stop',fg = 'blue',command=self.say_stop)
    self.button2.pack(side=LEFT)
    self.root=master
    self.stop = 0
    #scrollbar = Scrollbar(frame, orient=VERTICAL)
    #self.b1 = Listbox(frame, yscrollcommand=scrollbar.set)
    #scrollbar.pack(side=RIGHT, fill=Y)
    #self.b1.pack(side=LEFT, fill=BOTH, expand=1)
  def list_star(self):
    star = []
    file = open('yaojiang.txt','r+')
    data = file.readlines()
    file.close()
    for n in data:
      l1 = n.split(':')
      a = l1[0] + ':'+ l1[1][:4] + 'xxxx' + l1[1][8:12]
      a = a.strip()
      star.append(a)
    return star
  def start_hi(self):
    self.stop = 0 
    #star = []
    #file = open('yaojiang.txt','r+')
    #data = file.readlines()
    #file.close()
    #for n in data:
      #l1 = n.split(':')
      #a = l1[0] + ':'+ l1[1][:4] + 'xxxx' + l1[1][8:12]
      #a = a.strip()
      #star.append(a)
    star = self.list_star()
    self.update_clock(star)
  def say_stop(self):
    self.stop = 1
    #b = self.start()
  def update_clock(self,star):
    b = random.choice(star)
    self.v.set(b)
    if self.stop == 1:
      return
      self.root.after(50, self.update_clock,star)
root = Tk()
app = App(root)
root.mainloop()

希望本文所述对大家的Python程序设计有所帮助。

相关文章

简介二分查找算法与相关的Python实现示例

二分查找Binary Search的思想: 以有序表表示静态查找表时,查找函数可以用二分查找来实现。 二分查找(Binary Search)的查找过程是:先确定待查记录所在的区间,然后逐...

深入理解python中的闭包和装饰器

深入理解python中的闭包和装饰器

python中的闭包从表现形式上定义(解释)为:如果在一个内部函数里,对在外部作用域(但不是在全局作用域)的变量进行引用,那么内部函数就被认为是闭包(closure)。 以下说明主要针对...

解决phantomjs截图失败,phantom.exit位置的问题

刚刚学习使用phantomjs,根据网上帖子自己手动改了一个延时截图功能,发现延时功能就是不能执行,最后一点点排查出了问题。 看代码: var page = require('web...

Python基础学习之常见的内建函数整理

 前言 Python针对众多的类型,提供了众多的内建函数来处理,这些内建函数功用在于其往往可对多种类型对象进行类似的操作,即多种类型对象的共有的操作,下面话不多说了,来一看看详...

Python3批量移动指定文件到指定文件夹方法示例

Python3批量移动指定文件到指定文件夹方法示例

引言 某人需求:以某excel中姓名信息为名建立一系列文件夹,分别将四个文件夹中与人名对应的文件汇总到该人名对应的文件夹中,共近200人,手工处理费时费力。 需求分解: 从exc...