愚人节失恋,我用Python制作整蛊软件发送给女友,结果...

菜鸟学Python

共 2150字,需浏览 5分钟

 · 2021-04-03

点上方“菜鸟学Python”,选择“星标

第458篇原创干货,第一时间送达


不知不觉,一年一度的愚人节又到来了,愚人节也被称作为幽默节,是西方国家流行起来的一种民间的节日,意在通过朋友之间简单善意的小玩笑,来增添生活中的小乐趣。


小编也趁着这个节日制作了一个整蛊的小软件,本想发给女朋友娱乐一下,结果却惹她生气了,差点闹掰。具体是什么软件呢,大家一起来看看吧。


(耐心看完50秒,亮点在28秒)


视频中可以看到,当启动软件之后,程序会显示出文字窗口,而且会一直不断的循环出现并配有背景音乐。无论大家如何点击叉号,都没有办法完全的关闭窗口。


01.程序讲解

视频展示之后,接下来我们来看一下程序是如何实现的吧,通过上面的视频,我们可以将程序分为三个步骤来讲解。

  • 界面内容展示

  • 如何循环显示界面

  • 背景音乐循环

我们针对以上的三个步骤来分别进行程序的讲解。


02.界面内容展示

对于界面的展示,采用的是简单的tkinter界面进行制作,其程序如下图所示。

程序中,界面通过Label控件来进行文字内容的展示,为了增加界面形式的多样性,可以通过随机选择的方式来设置背景颜色和显示文字的字体。对于label控件绑定的键盘监听事件,这里是一个暗门,我们在程序的最后来讲解。程序运行后的界面如下图所示。

在电脑桌面中,每当关掉一个界面后,新的界面会通过随机的方式显示,位置不确定。


03.如何循环显示界面

对于页面的循环展示,是通过不断的开辟新的线程进行实现的,程序如下图所示:

上述的程序中,程序通过for循环的方式来开辟了多个线程,每个线程中都会去显示一个新的窗口界面,开启每个线程后,就会按照顺序来显示每个页面。

需要注意的是,当全部显示完所有的文字之后,也就是所有的线程都执行了一遍,此时就重新创建一组新的线程再去循环执行。


04.背景音乐循环

对于背景音乐的循环播放,这里利用pygame即可进行实现,程序如下图所示:

上述程序中,通过mixer.music.play(-1)来实现对于音乐的不断循环播放,而在整个的while循环中,当判断self.threads列表中的线程数量为0或者是self.threads中的列表数量达到所有文字数量之后,就会重新开启新的一组线程,来达到循环显示界面的目的。


05.程序暗门

可能有的小伙伴也想,一直关不掉界面也不行,必须得留个暗门方面停止程序,这个小编早就为大家考虑到了,上面我们提到了程序会监控键盘的输入,所以我们可以利用这个点来实现程序的停止。需要知道暗门,找小助手。

以上,就是小编给大家带来的愚人节整蛊小程序,大家可以根据的喜好,来下载源码,设置自己的整蛊文字。并通过pyinstaller来打包程序,发送给自己想要整蛊的对象。

由于添加pygame模块造成打包的程序达到了230M左右的内存占用量,因此,大家可以把第三步中的循环音乐部分进行删除,打包后的软件仅有9M左右,对这个小程序有兴趣的可以一起来学习一下。


欢迎大家在留言区点评,记得给个三连哦!

-END-


如何获取源码:

获取源码可以在公众号后台输入:小助手,找他拿。记得说明是哪一篇文章,我们有400多个原创案例呢!


推荐阅读:

入门: 最全的零基础学Python的问题  | 零基础学了8个月的Python  | 实战项目 |学Python就是这条捷径


干货:爬取豆瓣短评,电影《后来的我们》 | 38年NBA最佳球员分析 |   从万众期待到口碑扑街!唐探3令人失望  | 笑看新倚天屠龙记 | 灯谜答题王 |用Python做个海量小姐姐素描图 |


趣味:弹球游戏  | 九宫格  | 漂亮的花 | 两百行Python《天天酷跑》游戏!


AI: 会做诗的机器人 | 给图片上色 | 预测收入 | 碟中谍这么火,我用机器学习做个迷你推荐系统电影


年度爆款文案



点阅读原文,领廖雪峰大数据视频资料!

浏览 14
点赞
评论
收藏
分享

手机扫一扫分享

举报
评论
图片
表情
推荐
点赞
评论
收藏
分享

手机扫一扫分享

举报