pythonPython

Python 从GUI到exe

2021-09-26  本文已影响0人  所以suoyi
1、pycharm 创建一个新的虚拟环境

若想最后打包成的.exe文件小一点,从源头开始,减少无用的包
【pycharm创建虚拟环境及具体(意义)说明】
事实证明是有用的,一个小小的功能压缩文件300多M啊,重建一个强多了,就20M。。。

2、写你的脚本.py,用什么包下什么包

pip install PySimpleGUI 写GUI的包 好用

import PySimpleGUI as sg

这个包具体用法,找到一个集大成者的脚本demo:https://github.com/PySimpleGUI/PySimpleGUI/blob/069d1d08dc7ec19a8c59d5c13f3b8d60115c286b/DemoPrograms/Demo_All_Elements.py
几乎有用到所有元素

这种界面也很大气
https://github.com/PySimpleGUI/PySimpleGUI/blob/069d1d08dc7ec19a8c59d5c13f3b8d60115c286b/DemoPrograms/Demo_Dashboard.py

3、打包

pip install pyinstaller
一定不要忘记在虚拟环境里重新下载pyinstaller,否则会用你之前的,多下很多的依赖库
pyinstaller -D -w -i icon C:\Users\mal\PycharmProjects\WriteGui\yishuan_GUI.py
-D:打包出文件,启动exe很快,在dist文件夹里 ?? 好像不加这个也行
-F:打包出一个exe,启动速度慢
-i:图标文件,不用也行,就是丑了点
--clean:标志清除pyinstaller缓存

打包多个.py时:上面的命令后面跟-p 1.py -p 2.py -p 3.py,全用-p跟着就行

4、生成的文件

https://blog.csdn.net/dreamstar613/article/details/106644341/

pyinstaller 打包 直接使用命令  pyinstaller [-F/-D] [-w/-c] [-i xxx.ico] hello.py   

 最简单的打包:切换到hello.py所在目录 打开cmd ,执行命令  pyinstaller hello.py,就打包完成。
 在当前目录下会生成build文件夹和 dist文件夹 和 hello.spec文件。

(1)hello.spec 文件 pyinstaller 就是根据这个文件种的配置来生成hello.exe的
(2)dist文件夹内的hello文件夹内 有可执行文件hello.exe。因为默认的-D,如果要在别的电脑运行,需要把这个
hello文件夹整个复制过去。
(3)build文件夹的作用相当于PyInstaller的工作空间,PyInstaller运行相关的文件和日志都在这个文件夹中,
打包完成后可以直接删除。
————————————————
版权声明:本文为CSDN博主「dream_heheda」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/dreamstar613/article/details/106644341/

新建虚拟环境还会多个venv文件夹(venv这是你的python环境叫啥名 这文件夹就叫啥名)
最重要的就是dist文件夹,把它复制出来就行,里面的exe搞个快捷方式出来
venv也得复制出来 这是它的环境 ------ ??不加-D好像就不要这个了

5、出错记录

(1)忘重新下载pyinstaller,导致打包的文件特别多

(2)打包好的exe,使用时出现错误
 (i)“SupportingPluginAvailableButNotInstalled: Please install one of these plugins for read data in 'xlsx': pyexcel-xls,pyexcel-xlsx”,重新下载也没啥用,
 (ii)错误记录里有“pyexcel_io/get_data”什么的

网上搜索得知可能是 pyinstaller 与 pyexcel_xls 冲突,
法一:所以把from pyexcel_xls import get_data 改成了 from pyexcel_xlsx import get_data,结果还ok,算是正常了
法二:pyexcel_xls 0.6.2 版本 不冲突,也正好能用get_data (旧版本叫 read_data,旧版本脚本里能用,但打包成exe就不行了)这个好,xls,xlsx都能读

(3)快捷方式在别的电脑无法正常使用
是因为设置的快捷方式是读自己路径,可以右键管理设置使读相对路径(但是我不会),或者新建个快捷方式就好了嘛
(4)pycharm 下方 local 失去了 venv 这个环境(因为把文件倒来倒去)
File - Setting - python interpreter - 齿轮 - Add - exist environment - 把想要的 venv - Script - python.exe填好,环境就又回来了

上一篇下一篇

猜你喜欢

热点阅读