又到了每年一度的年会,最期盼的可能就是抽奖环节了。如果大家都吐槽抽奖不公,那不如用程序来抽吧。

实现思路

在屏幕上不断滚动名字,然后点击停止后停止滚动。名单是保存在excel中,所以需要从excel解析出名单。有思路了,那就开始吧。

素材准备

先找一张背景图吧,有鼓,那么就把鼠标变成鼓槌,敲一下鼓开始滚动,再敲一下鼓就停止滚动,依次循环。思想不错,那就这么实现吧。

还需要一个鼓槌的图片,如下图片。但是该图背景是白色的,在红色背景图片

上的绘制出来会是白色图片,所以需要将图片白色背景修改为透明。只能自己动手,装个Photoshop来修改了。具体方法百度一下就可以了很简单。

没有背景音乐有点乏味,那就加个背景音乐吧,网上找了一个鼓声的短音乐。

万事俱备只欠撸码

按功能块大概说说:

由于数据存在excel中,所以需要将excel的数据解析,并导入内存。我是用tuple的list来保存的。数据模型,[(工号,名字)],用到的库 import xlrd;

UI界面就用了游戏编程使用的pygame包,import pygame即可(前提是已经安装了pygame);

背景音乐和鼠标替换都使用pygame的接口:

音乐:

pygame.mixer.init()

pygame.mixer.music.load('9224.wav')

pygame.mixer.music.play()

pygame.mixer.music.stop()

鼠标替换:

思路就是隐藏鼠标,然后在鼠标的位置绘制图片即可。

x, y = pygame.mouse.get_pos()

x -= m.get_width() / 2

y -= m.get_height() / 2

pygame.mouse.set_visible(False)

screen.blit(m, (x, y))

打包为exe,让其在任何一台windows电脑都能飞起来:

一直用的pyinstaller,还是比较方便好用,依赖的数据文件别忘记copy到exe目录下即可。

os.system("pyinstaller -F Annual_awards_main.py")

os.system("copy 9224.wav dist\\")

os.system("copy bg_1366x768.png dist\\")

完整源码

https://github.com/ggangliu/Annual-meeting-lottery.git

2019年换个背景图片还能接着用

编程有时候能够带给我们乐趣

python抽奖简单小程序游戏_用Python做个年会抽奖小程序吧相关推荐

  1. python pygame模块怎么写游戏_使用 Python 和 Pygame 模块构建一个游戏框架

    这系列的第一篇通过创建一个简单的骰子游戏来探究 Python.现在是来从零制作你自己的游戏的时间. 在我的这系列的第一篇文章 中, 我已经讲解如何使用 Python 创建一个简单的.基于文本的骰子游戏 ...

  2. python玩微信小程序游戏_用python一步一步教你玩微信小程序【跳一跳】

    12月28日,微信上线了小游戏「跳一跳」,瞬间成了全民游戏,如何牢牢占据排行榜的第一位呢?用Python帮助你,Python真的无所不能. 作为技术出身的我们,是不是想用技术改变排名呢? 注意:本文适 ...

  3. python玩微信小程序游戏_使用python实现微信小程序自动签到功能

    功能描述目标 完成多账号微信小程序每天自动签到 输出 签到成功则向微信群发送签到成功的信息 否则提示用户签到失败,需手动签到 包管理 requests itchat time threading 程序 ...

  4. python实现消消乐游戏_用Python写个开心消消乐小游戏

    本文的文字及图片来源于网络,仅供学习.交流使用,不具有任何商业用途,如有问题请及时联系我们以作处理 提到开心消消乐这款小游戏,相信大家都不陌生,其曾在 2015 年获得过玩家最喜爱的移动单机游戏奖,受 ...

  5. python实现图片找不同游戏_用Python实现谷歌的小恐龙游戏

    (给Python开发者加星标,提升Python技能) 来源: Charles的皮卡丘-白露未晞me理 谷歌流量器中有个很有名的彩蛋:当你网络出现问题时,就会出现一个"小恐龙游戏". ...

  6. java小恐龙游戏_用Python实现谷歌的小恐龙游戏

    前言 本文的文字及图片来源于网络,仅供学习.交流使用,不具有任何商业用途,如有问题请及时联系我们以作处理. 谷歌流量器中有个很有名的彩蛋:当你网络出现问题时,就会出现一个"小恐龙游戏&quo ...

  7. 采用python语言实现猜数游戏_用python实现猜数游戏

    广告关闭 腾讯云11.11云上盛惠 ,精选热门产品助力上云,云服务器首年88元起,买的越多返的越多,最高返5000元! 本文实例为大家分享了python实现猜数游戏的具体代码,供大家参考,具体内容如下 ...

  8. android做一个坦克大战小游戏_一个 ECharts 做的猜数小游戏

    大概 1 年多之前,一位老同学找到我,问能不能帮他做一个非常简单的猜数字游戏,需求是这样的: 在 1 到 100 的整数里,随机选一个数字,让小朋友们猜: 如果猜错了,告知小朋友猜大了还是猜小了: 如 ...

  9. python绘制简单城市剪影图_利用Python的folium包绘制城市道路图的实现示例

    写在前面 很长一段时间内,我都在研究在线地图的开发者文档,百度地图和高德地图的开发者中心提供了丰富的在线地图服务,虽然有一定的权限限制,但不得不说,还是给我的科研工作提供了特别方便的工具,在博客前面我 ...

最新文章

  1. Python设置环境变量,改变GnomeConnectionManager的语言
  2. 基于DoG的特征检测子(SIFT)_学习笔记
  3. 基于移动位置服务器,移动定位服务器的设计与实现
  4. Spark Streaming 执行流程
  5. 嘘!阿里程序媛上班的第一件事是...
  6. ng-content的一个实际例子
  7. 报告:69% 的企业表示云技术有助于他们的疫情恢复
  8. mysql 结果集什么意思_结果集中的mysql“和”逻辑
  9. 【Android】HorizontalScrollView内子控件横向拖拽
  10. 怎么样判断页面是否在iframe框架里
  11. matlab里面的if跟几个end,在编程中写两个end if 是什么意思
  12. mysql - GTID主从复制
  13. Android Studio添加aar依赖
  14. win10安装nvidia驱动
  15. 微信提现php 该怎么加密,关于php 调用接口 微信云支付 HmacSha256 加密 request_content...
  16. 华为锁屏后微信无法连接服务器,华为手机锁屏时无法接收微信消息怎么办?
  17. 数据分析Power BI数据建模教程(四)——如何创建计算度量值和计算表
  18. 写给程序员的管理入门课程 -《格鲁夫给经理人的第一课》
  19. 反转字符串(Java实现)
  20. smil_SMIL简介-鞋串上的多媒体演示

热门文章

  1. oracle home 命令,oracle基本命令集锦
  2. 教师资格证网站内部服务器错误,教师资格证报名入口_教师资格证ntce_教师资格证报名入口进不去咋办?...
  3. 转载-解释路由包ping的情况
  4. 指令集CEO潘爱民受聘为之江实验室智能计算数字反应堆首席架构师
  5. 渗透测试之SQL注入
  6. Yapi 接口平台(Windows、Linux 在线离线安装部署)
  7. 【原】C++11并行计算 — 数组求和
  8. 如何用计算机进行绘画,如何在电脑上画画
  9. 计算机软件商标,计算机软件商标的类别号 是多少?
  10. E931.96人体感应控制IC自学笔记