精华内容
下载资源
问答
  • 公司年会抽奖小程序

    2019-01-09 14:07:28
    随机抽取员工进行pk做游戏,抽奖模块抽中的员工不会再次被抽中保证唯一性,config.txt配置员工信息姓名,name字段根据需求增加或者减少。
  • 年会 抽奖 小程序 EXCEL VBA 灵活的Excel小工具,可定制奖项名字、奖项数量和参与抽奖名单。
  • 年会抽奖小程序

    2021-08-26 11:25:40
    #!/usr/bin/env python # -*- coding:utf-8 -*- # Author:玄铁重剑无锋 # @Author : {玄铁重剑无锋} # @License : (C) Copyright 2021 玄铁...# @File : 02_年会抽奖小程序.py # @Time : 2021/8/26 10:23 # @Desc .
    #!/usr/bin/env python 
    # -*- coding:utf-8 -*-
    # Author:玄铁重剑无锋
    # @Author  :   {玄铁重剑无锋}
    # @License :   (C) Copyright 2021 玄铁重剑无锋, All rights reserved.
    # @Contact :   {sfrexpect@163.com}
    # @File    :   02_年会抽奖小程序.py
    # @Time    :   2021/8/26 10:23
    # @Desc    :
    # 年会抽奖程序
    # 张三科技有限公司有300员⼯,开年会抽奖,奖项如下:
    # ⼀等奖 3名, 泰国5⽇游
    # ⼆等奖6名,Iphone⼿机
    # 三等奖30名,避孕套⼀盒
    # 规则:
    # 1. 共抽3次,第⼀次抽3等奖,第2次抽2等奖,第3次压轴抽1等奖
    # 2. 每个员⼯限中奖⼀次,不能重复
    # 解题思路:
    # 1. ⽣成⼀个员⼯列表,⽤random模块从⾥⾯取随机值
    # 2. 取完值之后,⽴刻从员⼯⼤列表⾥把中奖⼈删掉,即可防⽌其再次中奖
    import random
    totle_people = []
    for i in range(1,301):
        totle_people.append(f"员工{i}")
    print(totle_people)
    # print(totle_people)
    count = 3
    while count > 0:
        if count == 3:
            for i in range(30):
                zhongjiang_30 = "".join(random.sample(totle_people,1))
                # print(three_30)
                totle_people.remove(zhongjiang_30)
                print(f"恭喜{zhongjiang_30}中三等奖,避孕套⼀盒")
            # 验证剩余人数是否正确
            # print(len(totle_people))
        elif count == 2:
            for i in range(6):
                zhongjiang_6 = "".join(random.sample(totle_people, 1))
                totle_people.remove(zhongjiang_6)
                print(f"恭喜{zhongjiang_6}中二等奖,Iphone⼿机一部")
            # print(len(totle_people))
        else:
            for i in range(3):
                zhongjiang_3 = "".join(random.sample(totle_people, 1))
                totle_people.remove(zhongjiang_3)
                print(f"恭喜{zhongjiang_3}中一等奖,泰国5⽇游")
            # print(len(totle_people))
        # 验证剩余次数
        count -= 1
        # print(f"还剩{count}次抽奖")
    
    
    

     

    import random
    from faker import Faker
    
    # 可以生成随机中文名字
    alex = Faker(locale="zh-CN")
    totle_people = []
    for i in range(1, 301):
        totle_people.append(alex.name())
    # print(totle _people)
    
    # 中奖员工列表
    level = [30, 6, 3]
    
    for i in range(3):
        winner_list = random.sample(totle_people, level[i])
        # 分别中三二一等奖的人的列表
        # print(winner_list)
        # .center(width[, char]) 返回长度为width的字符串
        # 字符串左右使用尽可能相同的char参数提供的字符填充
        print(f"中{3-i}等将的人员信息------".center(50, "*"))
        for del_winner in winner_list:
            totle_people.remove(del_winner)
            if i == 0:
                print(f"恭喜{del_winner}中{3 - i}等奖, 避孕套⼀盒")
            elif i ==1:
                print(f"恭喜{del_winner}中{3 - i}等奖, Iphone⼿机一部")
            else:
                print(f"恭喜{del_winner}中{3-i}等奖, 泰国5⽇游")
    

    展开全文
  • 年会抽奖小程序,可自定义背景,抽奖形式,设置奖品等
  • 佣金宝年会抽奖系统 使用说明 js/users.js 名单及图片地址数据(一个json数组) 图片放置在photos目录 o键: 清除中奖数据 enter键:开始/暂停 抽奖 s键: 显示已抽人数 ctrl [1~9] 快速设置抽取人数 时间...
  • 年会相片抽奖小程序

    2019-02-27 16:12:51
    自己公司年会需要抽奖,所以做的一个小程序,运行时从相片库抽取相片在屏幕轮巡,根据指令(目前是采用键盘空格键或者激光笔控制开启抽奖抽奖,每轮抽奖结束时自动以多张相片形式显示本轮抽奖结果。
  • 公司年会抽奖小程序 html+javascript源代码 后门设置指定中奖 排除设置指定不中奖 自定义皮肤 请运行在google chrome浏览器或火狐浏览器下 按键盘空格键或者字母A可进行抽取,隐藏菜单请按ESC。 建议每组选出10个...
  • 自制labview抽奖小程序,可选择同时抽1、5、10人,回车键控制启停,抽奖名单在list文件夹下,抽奖前将名单导入list.csv中即可,中奖人会从名单中删除后放入中奖.csv中
  • 年会抽奖小程序,包含源代码 自带的EXE每次抽取一个人 如果需要抽取多人,下载中附带了源码可以自己设计
  • 已中奖不会重复中奖,全部源代码,无需数据库,下载后将人员名单录入到.txt文件中即可开始抽奖;可自己设置抽奖名额。
  • pygame.display.set_caption("年会抽奖小程序") pygame.mixer.init() pygame.mixer.music.load(MUSIC_FILE) pygame.time.delay(1000) # 等待 1 s 钟 pygame.mixer.music.set_volume(0.5) # 设置播放音量 ...

    使用 pyinstaller 打包工具常用参数指南

     
    pyinstaller -F demo.py
    参数  含义
    -F  指定打包后只生成一个exe格式的文件
    -D  –onedir 创建一个目录,包含exe文件,但会依赖很多文件(默认选项)
    -c  –console, –nowindowed 使用控制台,无界面(默认选项)
    -w  –windowed, –noconsole 使用窗口,无控制台
    -p  添加搜索路径,让其找到对应的库。
    -i  改变生成程序的icon图标
    pyinstaller -F -w -noconsole Annual_awards_main.py --distpath=C:\Users\FrankLi\xxxx\dist --icon="./start.ico"

    在线 图标转换

    资源文件目录:

    uploading-image-149426.png

    完整 代码 第一版

    # -*- coding: utf-8 -*-
    __author__ = 'Frank Li'
    __version__ = 1.0
    import pygame
    from pygame.locals import *
    from sys import exit
    import xlrd
    import random
    
    FULLSCREEN = False
    MUSIC_FILE = './music/月之门 - 白龙口.mp3'
    DRUM_STICK = './frontimgs/gc_cz.png'
    font_file = './fonts/simhei.ttf'
    excel_file = './employee/name_file.xlsx'
    clock = pygame.time.Clock()
    mode =  1 if FULLSCREEN else 0 # default 0 <--> Full Screen
    
    mouse_range = dict(top=460,bottom=560,left=970,right=1030)
    
    def get_name_list_from_excel(file_name):
        '''"解析 人员.xlsx 文件,得到人员名单列表"'''
        name_list = []
        excelFile = xlrd.open_workbook(file_name)
        sheet = excelFile.sheet_by_name('employee')
        #print sheet.name, sheet.nrows, sheet.ncols
        job_num  = sheet.cell(0, 0).value
        job_name = sheet.cell(0, 1).value
        for row in range(1, sheet.nrows):
            job_num  = sheet.cell(row, 0).value
            job_name = sheet.cell(row, 1).value
            name_list.append((job_num, job_name))
        return job_num, job_name, name_list
    
    def handle_mouse_event(index,drum_stick_obj,pause_flag):
        if pygame.mouse.get_pressed()[0]:
            x, y = pygame.mouse.get_pos()
            x -= drum_stick_obj.get_width() / 2
            y -= drum_stick_obj.get_height() / 2
            if all((mouse_range.get('top')-50 < y < mouse_range.get('bottom'),mouse_range.get('left')-50 < x < mouse_range.get('right'))):
                print('coming ...')
                pause_flag =  not pause_flag
    
                if pause_flag:
                    pygame.mixer.music.stop()
                    print('暂停') if pause_flag else print('播放')
                else:
                    pygame.mixer.music.play()
                    print('暂停') if pause_flag else print('播放')
                    if name_list:
                        del name_list[index]
    
        return index,pause_flag
    
    if __name__ == '__main__':
        job_num, job_name, name_list = get_name_list_from_excel(file_name=excel_file)
        pygame.init()
        if not FULLSCREEN:
            screen = pygame.display.set_mode((1200,673),0,32)
            bgImage = './bgimgs/bg_1366x768.png'
        else:
            screen = pygame.display.set_mode((1200, 673), 0, 32)
            bgImage = './bgimgs/bg_1366x768.png'  # 这里替换一下
    
        bgImageObj = pygame.image.load(bgImage).convert()
        screen.blit(bgImageObj, (0, 0))
        drum_stick_obj = pygame.image.load(DRUM_STICK).convert_alpha()
    
        pygame.display.set_caption("年会抽奖小程序")
    
        pygame.mixer.init()
        pygame.mixer.music.load(MUSIC_FILE)
        pygame.time.delay(1000) # 等待 1 s 钟
        pygame.mixer.music.set_volume(0.5)  # 设置播放音量
        pygame.mixer.music.play(-1) # 循环播放
        pause_flag = False
    
        if len(name_list):
            index = random.randint(0,len(name_list)-1)
        else:
            prompt = '请检查员工信息表是否为空!'
    
        while True:
            clock.tick(60)
            for event in pygame.event.get():
                if event.type == pygame.QUIT or event.type == pygame.KEYDOWN and event.key == pygame.K_ESCAPE:
                    pygame.quit()
                    exit()
                if event.type == pygame.MOUSEBUTTONDOWN:
                    x,y = pygame.mouse.get_pos()
                    print(x,',',y)
                    index,pause_flag = handle_mouse_event(index,drum_stick_obj,pause_flag) # 暂停完成其实是将index再次返回重绘时候又用一样的
    
            if not pause_flag:
                # 若没有按下暂停键,那么每次循环都随机
                if len(name_list):
                    index = random.randint(0, len(name_list)-1)
                    # 写字
                    pno = name_list[index][0]
                    pname = name_list[index][1]
                    text_context = '恭喜工号 {} 姓名{}  喜提特等奖!'.format(pno, pname)
                else:
                    text_context = ' 年会抽奖完满结束,祝大家新年万事如意,阖家欢乐!'
                # if not pygame.mixer.music.get_busy():
                #     pygame.mixer.music.play()
    
            # 重新刷新背景图片 防止重影
            screen.blit(bgImageObj, (0, 0))
    
            # 获取鼠标位置,使用 图片替代
            x, y = pygame.mouse.get_pos()
            x -= drum_stick_obj.get_width() / 2
            y -= drum_stick_obj.get_height() / 2
            pygame.mouse.set_visible(False)
            screen.blit(drum_stick_obj,(x,y))
    
            # 抽奖结果展示
            font = pygame.font.Font(font_file, 40)
            text_obj = font.render(text_context, True, (255, 255, 255), (0, 0, 0))
            text_pos = text_obj.get_rect()
            text_pos.center = (500, 50)
            screen.blit(text_obj, text_pos)
    
            # 作者以及版本信息
            font2 = pygame.font.Font(font_file, 10)
            text_obj = font2.render('软件作者 {} , 版本号: {}'.format(__author__,__version__), True, (255, 255, 255), (255, 0, 0))
            text_pos = text_obj.get_rect()
            text_pos.center = (1000, 650)
            screen.blit(text_obj, text_pos)
    
            pygame.display.update()
    
    
    # 使用 pyinstaller 打包
    
    pyinstaller -F -w -noconsole AnnualGame.py --distpath=C:\Users\FrankLi\PycharmProjects\jdquickbuy.py\game\dist --icon="./favicon.ico"
    

    python 主流 GUI 库

    Python下各种GUI简介、使用优缺点对比
    GUI编程对比
    
    简介特点
    
    优缺点
    
    PyQt 
    
    Python 对跨平台的 GUI 工具集 Qt 的包装实现了 440 个类以及 6000 个函数或者方法 ,PyQt 是作为 Python 的插件实现的。  
    
    比较流行的一个 Tkinter 的替代品,功能 非常强大,可以用Qt开发多美漂亮的界面,也就可以用PyQt开发多么漂亮的界面。 跨平台的支持很好,不过在商业授权上似乎存在一些问题。
    
    Tkinter
    
    绑定了 Python 的 Tk GUI 工具集 ,就是Python 包装的Tcl代码,通过内嵌在 Python 解释器内部的 Tcl 解释器实现, Tkinter的调用转换成 Tcl 命令,然后交给 Tcl 解释器进行解释,实现 Python 的 GUI 界面。
    
    对比Tk和其它语言的绑定,比如 PerlTk ,是直接由 Tk 中的 C 库实现的。
    
    历史最悠久, Python 事实上的标准 GUI , Python 中使用 Tk GUI 工具集的标准接口,已经包括在标准的 Python Windows 安
    
    装中,著名的 IDLE 就是使用 Tkinter 实现 GUI 的创建的 GUI 简单,学起来和用起来也简单。
    
    wxPython
    
    Python 对跨平台的 GUI 工具集 wxWidgets ( C++ 编写)的包装,作为 Python 的一个 扩展模块实现。
    
    比较流行的一个 Tkinter 的替代品,在 各种平台下都表现挺好。
    
    PyGTK
    
    一系列的 Python 对 GTK+ GUI 库的包装。
    
    比较流行的一个 Tkinter 的替代品,许多 Gnome 下的著名应用程序的 GUI 都是使用 PyGTK 实现的,比如 BitTorrent , GIMP和 Gedit 都有可选的实现,在 Windows 平台 似乎表现不太好,这点也无可厚非,毕竟使用的是GTK 的 GUI 库。
    
    PySide
    
    另一个 Python 对跨平台的 GUI 工具集 Qt 的包装,捆绑在 Python 当中,最初由 BoostC++ 库实现,后来迁移到 Shiboken。
    
    比较流行的一个 Tkinter 的替代品,和上 面类似,至于两者的区别,这里 有一个介绍。
    
     
    
    PyQt 的介绍 : http://en.wikipedia.org/wiki/PyQt
    
    Tkinter 的介绍 : http://en.wikipedia.org/wiki/Tkinter
    
    wxPython 的介绍 : http://en.wikipedia.org/wiki/WxPython
    
    PyGTK 的介绍 : http://en.wikipedia.org/wiki/PyGTK
    
    PySide 的介绍 : http://en.wikipedia.org/wiki/PySide

    主流GUI

    转载于:https://www.cnblogs.com/Frank99/p/10346164.html

    展开全文
  • 年会抽奖小程序源码

    2019-10-16 09:36:00
    年会抽奖小程序,可以在此基础上进行扩展,界面如下: 源码如下: <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <...

    年会抽奖小程序,可以在此基础上进行扩展,界面如下:

    源码如下:

    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">  
    <html>  
     <head>  
      <title> 抽奖活动 </title>  
      <meta name="Generator" content="EditPlus">  
      <meta name="Author" content="">  
      <meta name="Keywords" content="">  
      <meta name="Description" content="">  
     </head>  
       
     <body>  
         
    <html>  
    <head>  
    <meta http-equiv="Content-Type" content="text/html;charset=gb2312"/>  
    <meta http-equiv="Content-Language" content="zh-CN"/>    
    <title>抽奖活动</title>  
    <style type="text/css">  
    body {padding-top:100px;font:12px "\5B8B\4F53",sans-serif;text-align:center;}  
    .result_box {margin:0 auto;width:700px;padding:100px 0;text-align:center;border:3px solid #40AA53;background:#efe;}  
    .result_box #oknum {width:700px;color:#cc0000;font-size:50pt;font-family:Verdana;text-align:center;border:none;background:#efe;}  
    .button_box {margin:50px 0 0 0;}  
    .button_box .btn {cursor:pointer;padding:0 30px;margin:0 10px;color:#555;font-family:"\5B8B\4F53",sans-serif;font-size:40px;}  
    </style>  
    </head>     
    <body>  
    <script type="text/javascript">  
    //抽奖数据,以英文逗号分隔  
    var alldata = "001李大,002二,003邓三,004罗四,005欧五,006周六,007陈七,008潘八,009张九,010林十,011朱十一,012赵十二,013陈十三,014王十四";    
    var alldataarr = alldata.split(",");    
    var num = alldataarr.length-1;  
    var timer;  
    function change(){     
        document.getElementById("oknum").value = alldataarr[GetRnd(0,num)];     
    }  
    function start(){     
        clearInterval(timer);     
        timer = setInterval('change()',46); //随机数据变换速度,越小变换的越快     
    }  
    function ok(){     
        clearInterval(timer);     
        //以下代码表示获得奖的,不能再获奖了。  重置刷新页面即可。  
        alldata = alldata.replace(document.getElementById("oknum").value,"").replace(",,",",");  
        // 去掉前置,最末尾的,  
        if (alldata.substr(0,1)==",")  
        {  
          alldata = alldata.substr(1,alldata.length);  
        }  
        if (alldata.substr(alldata.length-1,1)==",")  
        {  
          alldata = alldata.substring(0,alldata.length-1);  
        }  
        alldataarr = alldata.split(",");    
        num = alldataarr.length-1;    
    }     
    function GetRnd(min,max){     
        return parseInt(Math.random()*(max-min+1));     
    }  
    </script>  
    <div class="result_box"><input type="text" id="oknum" name="oknum" value="抽奖结果" /></div>  
    <div class="button_box"><button class="btn" onclick="start()" accesskey="s">开始(<U>S</U>)</button><button class="btn" onclick="ok()" accesskey="o">停止(<U>O</U>)</button></div>  
    </body>     
    </html>  
     </body>  
    </html>

     

    展开全文
  • 年会抽奖小程序.zip

    2021-11-18 11:45:27
    html5,地球旋转、动态效果抽奖小程序
  • 利用python编写年会抽奖小程序

    千次阅读 2019-01-25 19:59:28
    今天看到有人吐槽公司年会抽奖,中奖的都是程序员,一时兴起自己写一个抽奖小程序,如有不足,还请大神指点~ 【需求】 参与抽奖的员工名单从cvs文件导入 一共5轮抽奖:幸运奖两轮(15名*2),三等奖(6名),二等奖...

    今天看到有人吐槽公司年会抽奖,中奖的都是程序员,一时兴起自己写一个抽奖小程序,如有不足,还请大神指点~

    【需求】

    1. 参与抽奖的员工名单从cvs文件导入
    2. 一共5轮抽奖:幸运奖两轮(15名*2),三等奖(6名),二等奖(3名),一等奖(1名)
    3. 输入“s”开始抽奖
    4. 在上一轮被抽中者要被从下一轮的名单中剔除

    【代码】

    # -*- coding: utf-8 -*-
    
    '''
        作者:Nicole
        版本:2.0
        日期:2019年1月25日
        项目名称:年会抽奖小程序
    '''
    
    import pandas as pd
    import random
    
    #导入员工名单
    staff_list = pd.read_csv(r'/Users/nicole/PycharmProjects/projects/抽奖名单.csv')
    round_list = list(staff_list['工号'])
    prize_list = []
    n_prize = [15,15,6,3,1]
    prize_name = ['第一轮幸运奖','第二轮幸运奖','三等奖','二等奖','一等奖']
    
    #过滤抽奖名单函数
    def new_list_generate(original_list,prize_list):
        new_list =[]
        for i in original_list:
            if i not in prize_list:
                new_list.append(i)
        return new_list
    
    #抽奖函数
    def draw_pize(round_list,prize_list):
        v = 0
        while v < 5:
            start = input('输入"s"开始:')
            if start in ['s','S']:
                round_list = new_list_generate(round_list,prize_list)
                prize_list = random.sample(round_list,n_prize[v])
                print('{}:'.format(prize_name[v]),prize_list)
                v += 1
            else:
                print('输入错误...')
                continue
    
    
    if __name__ == '__main__':
        draw_pize(round_list,prize_list)
    

    【运行结果】

    输入"s"开始:s
    第一轮幸运奖: [132, 23, 29, 109, 10, 62, 127, 30, 122, 21, 55, 49, 137, 35, 56]
    输入"s"开始:k
    输入错误...
    输入"s"开始:S
    第二轮幸运奖: [126, 102, 13, 136, 6, 66, 111, 140, 24, 47, 99, 104, 146, 118, 65]
    输入"s"开始:s
    三等奖: [121, 130, 144, 73, 40, 78]
    输入"s"开始:s
    二等奖: [135, 54, 61]
    输入"s"开始:s
    一等奖: [117]
    

    【总结】

    1. 提高某些员工的中奖概率,下次写
    展开全文
  • 随机抽取员工进行pk做游戏,抽奖模块抽中的员工不会再次被抽中保证唯一性,config.txt配置员工信息姓名,name字段根据需求增加或者减少。
  • 简单的年会抽奖PPT

    2019-01-12 12:23:28
    简单的关于PPT抽奖功能,适用于2到20人范围,可以做参考学习
  • 微信小程序年会签到和签到后获得幸运数字的完整版,附带php后台接口,数据库自己建,文件里有说明建数据库的信息。
  • 亲测可用的微信3D签到及3D抽奖程序,非常好用并且可用的破解版程序,除了微信签到及抽奖之外还有手机号抽奖、幸运号码抽奖、奖箱抽奖、摇一摇、对对碰等抽奖功能。非常全的程序年会抽奖必备!
  • 年会炫酷抽奖小程序支持以下功能: 1.抽奖时自动播放背景音乐,中奖之后随即播放中奖音乐 2.中奖后自动从抽奖池移除 3.中奖之后支持从中奖名单移除,重新回到抽奖池,防止误操作 4.上手容易不用改代码,只是改下...
  • 主要为大家详细介绍了python实现公司年会抽奖程序,具有一定的参考价值,感兴趣的伙伴们可以参考一下
  • 主要为大家详细介绍了python实现年会抽奖程序,具有一定的参考价值,感兴趣的伙伴们可以参考一下
  • 抽奖。 可以抽一等、二等,前提是中间过程页面不可以被刷新或者关闭
  • 年会抽奖含完整源代码

    热门讨论 2016-12-08 14:12:20
    联欢会抽奖程序(含完整源代码),支持同时抽取单个或多个,支持分组抽奖,支持抽中名单打印,后台中奖和未中奖人员名单导出,非常实用的一款抽奖程序
  • 不需要数据库,数据都是静态的,两个页面,滚动照片抽奖,规则:抽人发红包,先抽一个幸运者不需要发红包,再抽奖,有100,200,300,500,1000,5种红包,每个人发红包总和不能超过2000
  • PPT制作的抽奖程序(可用于年会抽奖、点名),也可以自己在宏代码中更改总数。建议在Powerpoint 2016及以上版本运行。
  • 年会抽奖程序

    2020-06-03 16:46:33
    staff_num = int(input('参加年会员工人数为:')) count = 0 for i in range(1, staff_num + 1): # 将参加员工的人数放入奖池 l_box.append(i) while count < 3: # 抽奖3次 count += 1 if count == 1: # 第一...
  • 主要为大家详细介绍了HTML+JavaScript实现年会抽奖程序的200行代码,具有一定的参考价值,感兴趣的伙伴们可以参考一下

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 506
精华内容 202
关键字:

年会抽奖小程序