首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

拿Python给老师做个随机点名系统

大家好,欢迎来到 Crossin的编程教室 !

各位读者对学校里上课时老师点名一定再熟悉不过了。有些名字比较有“吸引力”的同学表示压力很大,总是被老师点到回答问题,从来都不敢翘课或开小差。

今天这篇咱们就来分享一个随机点名的系统,并把它打包成exe。把它送给任课老师,再也不怕被“重点关照”啦!

一、实现随机点名

代码的功能不复杂,核心原理就是通过 randint 生成一个随机序号,然后从学生名单的excel中去取对应的学生姓名和性别。其余大部分的代码是用自带的 tkinter 模块来写一个交互的界面。

运行效果如下:

二、pyinstaller打包成exe

代码是完成了。但为了让老师用得方便,我们把它“打包”成一个可执行文件,这样就不需要在运行的电脑上安装 Python 环境了。

PyInstaller是一个跨平台的Python应用打包工具,支持Windows/Linux/MacOS三大主流平台,能够把 Python 脚本及其所在的 Python 解释器打包成可执行文件,从而允许最终用户在无需安装 Python 的情况下执行应用程序。

pyinstaller安装

pyinstaller打包python程序

PyInstaller 最简单使用只需要指定作为程序入口的脚本文件。PyInstaller 执行打包程序后会在当前目录下创建下列文件和目录:main.spec 文件,其前缀和脚本名相同,指定了打包时所需的各种参数;build 子目录,其中存放打包过程中生成的临时文件。warnxxxx.txt文件记录了生成过程中的警告/错误信息。如果 PyInstaller 运行有问题,需要检查warnxxxx.txt文件来获取错误的详细内容。xref-xxxx.html文件输出PyInstaller 分析脚本得到的模块依赖关系图。dist子目录,存放生成的最终文件。如果使用单文件模式将只有单个执行文件;如果使用目录模式的话,会有一个和脚本同名的子目录,其内才是真正的可执行文件以及附属文件。

命令行输入以下代码:

-F | --onefile:生成单一的可执行文件

-i | --icon:为执行文件指定图标

默认生成在C盘,找到dist文件夹里的带图标的exe程序,双击运行,正常运行进入程序可以玩说明打包程序成功。

运行效果如下:

三、解决使用pyinstaller打包程序时出现RecursionError报错

打包的时候可能会出现如下错误:

RecursionError: maximum recursion depth exceeded

执行 pyinstaller,虽然报错,但会生成 your_filename.spec文件

在C盘找到 your_filename.spec 文件,打开进行编辑,添加以下语句

再次执行 pyinstaller 和 your_filename.spec文件

成功将python程序打包成exe,解决了问题。

结语

  • 发表于:
  • 原文链接https://kuaibao.qq.com/s/20210305A068MI00?refer=cp_1026
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券