Python如何将写好的代码打包成exe文件
第一步 下载pyinstallerpyinstaller插件是Python自带的插件,用于为我们写好的代码进行打包,最终自动合成.exe文件。在Pycharm界面的最下面,你可以看到Terminal,选择这个选项,这就是一个终端界面。在此界面写输入指令: pip install pyinstaller 对pyinstaller进行下载。我的错误一:python3.10和pythpn3.9环境冲突
第一步 下载pyinstaller
pyinstaller插件是Python自带的插件,用于为我们写好的代码进行打包,最终自动合成.exe文件。
在Pycharm界面的最下面,你可以看到Terminal,选择这个选项,这就是一个终端界面。
在此界面写输入指令: pip install pyinstaller 对pyinstaller进行下载。
我的错误一:
-
python3.10和pythpn3.9环境冲突 用anaconda python310环境解决
常见错误提示一:
-
在终端中输入指令 pip install pyinstaller 后,报错:
“You are using pip version 10.0.1, however version 20.0.2 is available. You should consider upgrading via the ‘python -m pip install --upgrade pip’ command.”
-
解决方案:
输入指令:‘python -m pip install --upgrade pip’
-
报错信息
ERROR: Could not install packages due to an OSError: [WinError 5] 拒绝访问。: 'C:\\Users\\...\\AppData\\Local\\Temp\\pip-uninstall-xq6nqdvs\\jupyter-notebook.exe' Consider using the --user option or check the permissions.
分析 看到最后一句Consider using the --user option or check the permissions. 应该是权限问题,跟着建议来就可
-
解决方法 将pip install ...加入--user为pip install --user ...即可 如果还是有问题,可以以管理员权限运行cmd再输入上述命令行试试
-
第二步 使用pyinstaller
在终端里输入的指令为: pyinstaller -w -F XXX.py
但是对于初学者来说,这里要解释的东西很多: -w:表示希望在生成的.exe程序运行过程中,不要出现cmd黑框(就是图中的黑框)(注意:小写!)
-F:表示希望将所有的程序全部打包在一起,生成的只有一个.exe文件,这样的文件集成度高,但是运行速度慢;如果不写-F,生成的还有一堆.dll文件,这样的程序里文件很多,但是运行速度比较快,这也是我们平时使用的程序的样式(如图)(注意:大写!)
XXX.py:指的是你整个项目的入口程序,大家写项目时很可能是多文件编程,你整个项目时靠哪个文件作为入口拉起来的,就填那个文件的名字。
常见错误: ValueError: script ‘C:\Users\Administrator.XXX.py’ not found 找不到XXX.py这个程序
解决方案: pyinstaller找文件的方法是看你建立的那个工程文件夹里有没有你写进去的文件,而不是看子文件夹里有没有。如果您是在子文件夹中写程序,可以把你写的所有程序都拷贝到工程文件夹中。 如果你在代码中导入了图片、文档等与路径相关的文件,注意修改路径。
第三步: 找到生成的.exe文件
有不少同学都反映,没有看到生成的.exe文件。
没看见就对了,因为.exe文件根本不在工程文件夹下面。运行pyinstaller -w -F XXX.py指令后,会生成两个文件夹:一个叫build,另一个叫dist。
点开dist文件夹,里面会有一个用你填进去的XXX命名的文件夹,再点进去,你就会看到XXX.exe文件。 理论上你已经生成了.exe可执行文件,这样就完成了。如果你的.exe文件可以运行起来,那么恭喜你!但是实施情况是,这个.exe文件运行起来很有可能会有各种各样奇葩的问题:比如闪退、双击后直接消失了、程序莫名其妙地崩掉等
更多推荐
所有评论(0)