打包的时候可以新建一个包,环境中不要安装太多的包这样就可以包小一点。
activate testpro
安装打包软件
pip3 install pyinstaller
执行打包命令
pyinstaller -F movefileforexcel.py
结果,dist中就是打包好的exe。
Mac下,发布PyQT为app程序
方式1:使用pyinstaller发布(推荐)
- 安装
pip install pyinstaller -i https://pypi.tuna.tsinghua.edu.cn/simple
复制Error复制成功… - 终端运行
pyinstaller --windowed --onefile --clean --noconfirm main.py
pyinstaller --windowed --onefile --clean --noconfirm main.spec
添加 Retina 支持
办法是main.spec向其中添加:
info_plist={ ‘NSHighResolutionCapable’: ‘True’ } 如下所示:
app = BUNDLE(exe,
name=‘main.app’,
icon=‘icon.icns’,
bundle_identifier=None,
info_plist={
‘NSHighResolutionCapable’: ‘True’,
})
复制Error复制成功…
解决双击APP启动慢的问题
可以不打包成单个.app文件,而是打包成一个目录中,然后去目录下把感觉没用到的内容删掉,,这样启动更快 …
将–onefile改为–onedir
方式2:使用py2app发布
- 安装py2app
pip3 install py2app -i https://pypi.tuna.tsinghua.edu.cn/simple
复制Error复制成功… - 生成 setup.py 文件
py2applet --make-setup main.py
- 清空以前生成的编译文件
rm -rf build dist
复制Error复制成功… - 生成mac下的应用
python setup.py py2app
包含ui文件
思路一:会打包成一个文件夹ui 和图标都会带上
pyinstaller --windowed --icon=panda.ico --add-data=“movefileforexcelWindows.ui;.” movefileforexcelWindows.py
打包成文件夹后,使用InstallForge工具进行安装打包
这里的命令会是movefileforexcel_window.py中的代码进行替换
思路二:
pyuic5.exe xxx.ui -o xxx_window.py -x -d
pyuic5 movefileforexcelWindows.ui -o movefileforexcel_window.py -x -d
会生成一个py对应ui的类,把逻辑移到里面合成一个文件是一种思路。然后执行
pyinstaller --windowed --onefile --icon=panda.ico movefileforexcel_window.py