分享你的程序,学会打包.py文件

Python客栈

共 1278字,需浏览 3分钟

 ·

2020-12-05 20:18


为了感谢大家对“Python客栈”的关注与支持,我们每天会在留言中随机抽取三位粉丝发放6.6元小红包。快来参与吧!


有的时候我们写出一些实用的脚本,小程序想要分发给朋友同事们使用,但是没有python环境是不能运行.py文件的,要运行的话先要有python解释器,还要对照代码下载相应的第三方包,这就很麻烦了。所以我们需要将.py文件打包为.exe文件,再分享出去就可以直接运行了。


这里我们用到pyinstaller来进行打包


一、安装pyinstaller


pip install pyinstaller


直接使用pip安装即可


二、命令行程序中进入.py文件的目录


cmd,power shell都可以



三、输入打包命令


以前两天制作的倒计时小程序为例

pyinstaller clock.py


输入完后就会开始打包,打包完成后的文件目录如下


打包好的程序就在dist文件夹中


这里的其他文件多为第三包的依赖文件,看起来是不是很乱?我们可以添加-F参数变为单文件打包模式。


pyinstaller -F clock.py


这样就只有一个.exe文件了


四、pyinstaller常用参数


  • -F:单文件打包模式

  • -D:默认打包模式,生成依赖文件

  • -w:直接运行程序,不生产命令行窗口(windows限定)

  • -i:打包的程序设置图标

  • -d:生成debug文件,方便查找错误



完整参数请看:

https://pyinstaller.readthedocs.io/en/v3.3.1/usage.html(英文原文)

https://blog.csdn.net/weixin_39000819/article/details/80942423


五、常见问题


1.打包产生的文件过大

导包的时候能from.....import....就尽量用这个,因为如果是import的话,在打包的时候,会将整个包都打包到exe里面。


2.‘Failed to execute script xxx’错误 

(1)检查一下代码里有没有 input,如果代码里有 input语句,而打包时又使用了 -w选项时就会出现这个错误。(-w为gui程序限定)

(2)打包的时候缺失某些第三包的依赖文件,须手动找到第三方包的文件复制到打包目录下,或者打包的时候添加-p参数指定丢失包的路径


3.打包后的程序闪退

常见的情况是程序中引用的文件采用了绝对路径,从而在新电脑上找不到引用地址,需改为相对路径解决。


END

往期推荐

阿里云盘又双叒叕上线啦!尝鲜下载

拒绝伸手!新手如何正确对待代码报错

Python 下载文件的七种方式,你get了吗?

资深开发者都经常使用的10个 PyCharm 技巧


昨日留言中奖名单

以上三位小伙伴,快来联系小编领取小小红包一份哦!小编微信:Mayyy530


转发,点赞,在看,安排一下?
浏览 20
点赞
评论
收藏
分享

手机扫一扫分享

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

手机扫一扫分享

举报