将python打包成exe文件,详细介绍(各种坑解决)

  1. 安装pyinstaller
    一开始偷懒,直接使用的pip安装,结果各种问题
pip install pyinstaller

所以还是去github去下载最新的pyinstaller,替换掉用pip安装好的pyinstaller,下载链接:pyinstaller
下载zip文件再解压,将解压后的文件直接放在anaconda\Lib\site-package文件夹中全部替换pyinstaller,然后打开命令行,进入到解压后的PyInstaller文件的目录下,输入:

python setup.py install

等跑完就好了

  1. 安装PyQt5
    网络有各种方式,我试过了几种都用问题,包括用pip3安装,或者用镜像源直接pip安装。会出现这个问题:
DecodeError: Expecting value: line 1 column 1 (char 0)

你可以试下from PyQt5 import QtCore,应该会报错,其实就是PyQt5没安装好。
首先,在anaconda3文件夹(我用的anaconda3)中看看有没python3.dll文件,没有的话到网上找一下放进去,或者自己下载python3.x找到上面那个文件放进去,接下来使用下面的指令:

pip install PyQT5==5.9

嗯,其实就是版本的问题,使用这个一般没问题。

  1. 遇到的另一一个问题
for real_module_name, six_module_name in real_to_six_module_name.items():
AttributeError: 'str' object has no attribute 'items'

这个就是setup_tools文件需要更新,一般更新的时候会提示当前版本的setup_tools无法remove,更新不了,使用下面的代码:

pip install --upgrade setuptools --ignore-installed

还有编译的时候可能出现:

UnicodeDecodeError: 'utf-8' codec can't decode byte 0xce in position 130: invalid continuation b

解决方法
思路:编码格式问题(可直接解决问题)
1、首先尝试将中文解释都去掉
2、然后,改变控制台的编码格式为utf-8 解决方法,先在控制台中输入 chcp 65001,
然后再使用 pyinstaller 打包即可!
参考:https://blog.csdn.net/qq_41185868/article/details/80599390

猜你喜欢

转载自blog.csdn.net/hanzy88/article/details/82811910
今日推荐