愚人节失恋,我用Python制作整蛊软件发送给女友,结果...
The following article is from 菜鸟学Python Author 菜鸟哥
作者丨菜鸟哥
来源 l 本文经经授权转自 菜鸟学Python(ID:cainiao_xueyuan)
不知不觉,一年一度的愚人节又到来了,愚人节也被称作为幽默节,是西方国家流行起来的一种民间的节日,意在通过朋友之间简单善意的小玩笑,来增添生活中的小乐趣。
小编也趁着这个节日制作了一个整蛊的小软件,本想发给女朋友娱乐一下,结果却惹她生气了,差点闹掰。具体是什么软件呢,大家一起来看看吧。
(耐心看完50秒,亮点在28秒)
视频中可以看到,当启动软件之后,程序会显示出文字窗口,而且会一直不断的循环出现并配有背景音乐。无论大家如何点击叉号,都没有办法完全的关闭窗口。
01.程序讲解
视频展示之后,接下来我们来看一下程序是如何实现的吧,通过上面的视频,我们可以将程序分为三个步骤来讲解。
界面内容展示
如何循环显示界面
背景音乐循环
我们针对以上的三个步骤来分别进行程序的讲解。
02.界面内容展示
对于界面的展示,采用的是简单的tkinter界面进行制作,其程序如下图所示。
在电脑桌面中,每当关掉一个界面后,新的界面会通过随机的方式显示,位置不确定。
03.如何循环显示界面
对于页面的循环展示,是通过不断的开辟新的线程进行实现的,程序如下图所示:
上述的程序中,程序通过for循环的方式来开辟了多个线程,每个线程中都会去显示一个新的窗口界面,开启每个线程后,就会按照顺序来显示每个页面。
需要注意的是,当全部显示完所有的文字之后,也就是所有的线程都执行了一遍,此时就重新创建一组新的线程再去循环执行。
04.背景音乐循环
对于背景音乐的循环播放,这里利用pygame即可进行实现,程序如下图所示:
上述程序中,通过mixer.music.play(-1)
来实现对于音乐的不断循环播放,而在整个的while循环中,当判断self.threads列表中的线程数量为0或者是self.threads中的列表数量达到所有文字数量之后,就会重新开启新的一组线程,来达到循环显示界面的目的。
05.程序暗门
可能有的小伙伴也在想,一直关不掉界面也不行,必须得留个暗门方面停止程序,这个小编早就为大家考虑到了,上面我们提到了程序会监控键盘的输入,所以我们可以利用这个点来实现程序的停止。需要知道暗门,找小助手。
以上,就是小编给大家带来的愚人节整蛊小程序,大家可以根据的喜好,来下载源码,设置自己的整蛊文字。并通过pyinstaller来打包程序,发送给自己想要整蛊的对象。
由于添加pygame模块造成打包的程序达到了230M左右的内存占用量,因此,大家可以把第三步中的循环音乐部分进行删除,打包后的软件仅有9M左右,对这个小程序有兴趣的可以一起来学习一下。
欢迎大家在留言区点评,记得给个三连哦!
识别关注我们
了解更多精彩内容
点分享
点点赞
点在看