使用pyinstaller打包多个和单个python文件

一、打包多个

1、将需要打包的项目为anjuke_sd目录下的所有python文件,其中excute_main.py为主文件。
在这里插入图片描述
2、生成主函数对应的spec文件
命令:在anjuke_sd路径下使用:pyi-makespec excute_main.py
在这里插入图片描述
如下图已经生成excute_main.spec文件。
在这里插入图片描述
3、修改spec文件:加入需要打包的所有python文件,同时确保以下两项包含该项目的路径
在这里插入图片描述
4、对spec文件进行pyinstaller安装
命令:pyinstaller excute_main.spec
在这里插入图片描述
若显示如下所示则证明打包成功。
在这里插入图片描述
此时项目下多了两个目录,进入dist目录,找到dist路径下后缀名为exe的文件。这里为dist下目录excute_main下的excute_main.exe。
在这里插入图片描述
在这里插入图片描述
打包成功!

二、打包单个文件

1、还是进入你需要打包的文件的路径,执行命令:pyinstaller -F 1.py,如下图所示。
在这里插入图片描述

ps: -F参数表示覆盖打包,这样在打包时,不管我们打包几次,都是最新的,这个记住就行,固定命令。

出现问题:
在这里插入图片描述
assert mpl_data_dir, “Failed to determine matplotlib’s data directory!”
AssertionError: Failed to determine matplotlib’s data directory!
解决:
找到该文件:
D:\ProgramFile\Python38\Lib\site-packages\PyInstaller\hooks
修改hook-matplotlib.py文件,按照如下代码进行修改,再次打包就可以正常

import matplotlib
 
mpl_data_dir = matplotlib.get_data_path()
 
datas = [
    (mpl_data_dir, "matplotlib/mpl-data"),
]

在这里插入图片描述

2、执行完毕之后,会生成几个文件夹,如下图所示。
在这里插入图片描述
点进去就看到了exe,点击运行

在这里插入图片描述
OK!
在这里插入图片描述
3、默认打包图片,如下图所示。

在这里插入图片描述

加上 -i 参数之后,如下图所示,会形成一个类似风力发电机的logo图案。

在这里插入图片描述

ps:程序路径最好全部都是英文,否则肯能会出现莫名其妙的问题

总结命令

Pyinstaller -F setup.py 打包exe

Pyinstaller -F -w setup.py 不带控制台的打包

Pyinstaller -F -i xx.ico setup.py 打包指定exe图标打包

平常我们只需要这三个就好了,足够满足所有需求了。

  • 22
    点赞
  • 158
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 7
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 7
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

阿肆si

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值