如何解决python使用pyinstaller打包.exe文件(详细解析)

1,369 阅读3分钟

pyinstaller(零基础小白)攻略

文档产生原因,由于本人期末大作业有一个欺负人的要求,需要将开发好的文档打包成.exe的可运行文件。经过我努力的学习,网上太多坑人的文章了,所以决定写一篇文章来让广大读者少走弯路。

第一步:安装 pyinstaller

  • 打开命令行:win + R 输入: cmd
  • 你想打包python.exe程序,你连工具都没有,那你多少有点离谱了那该如何查看你有没有这个工具呢,来请听我详细道来:
  1. 你可以在命令行输入 pyinstaller -v
  • 下图表示你还未安装pyinstaller或你python环境系统环境变量没调好

  • tips:下图的命令我是故意敲错的,为了演示,因为我本来就解决了这个问题了。

    image.png

  • 下图说明你成功安装了

image.png

  • 安装步骤:在命令行输入:pip install pyinstaller

第二步:打开你的项目(这里我用我期末作业做演示)

情况一(单文件)像这种:

image.png 单个.py文件的非常简单,你只需要按照以下步骤进行操作,你就可以得到一个.exe程序

  • 第一步:打开pycharm下面得终端 image.png
  • tips:终端的路径可以按照下图进行调整,这样你就可以在pycharm里面使用终端了

image.png

第二步:在终端输入 pyinstaller -D book_sys.py

image.png

image.png

  • 出现上图提示,表示你已经成功的将.exe文件生成。并且此时文件存在于一个名为dist 的文件中

image.png

  • 我打开文件运行出现以上报错,是因为我没将数据库(指我上面的book.txt和user.txt)移到同一文件夹下。移过去就好了。
  • 单文件讲解结束。

情况二(多文件)like this:

image.png

这里我定义了一大堆类和对象,并且导入了一个第三方库。

  • 跟着我走:

第一步:

  • 1 为Python项目创建虚拟环境

1.1 安装 pipenv

pip install pipenv

1.2 创建虚拟环境

跳转到项目文件夹打开cmd窗口并输入以下代码

pipenv install 

1.3 为虚拟环境安装指定包

pipenv install numpy

如果使用默认安装源,大多数情况下会卡在locking阶段,解决办法有二

  1. 更改安装源,修改项目文件夹下的Pipfile文件中 url 后边的内容
  2. 使用 –skip-lock 参数跳过lock过程

1.4 激活虚拟环境

pipenv shell

第二步:在Pycharm端更改python解析器

  • 找到下图位置

image.png

  • 点那个红圈圈,点添加。
  • 注意:软件包这一块,如果你有导入第三方库,你要点加号把你所导入的第三方库包放进来,不让之后运行程序时会报错ModuleNotFoundError: No module named 'pygame'

image.png 注意:这里要配置那个现有环境,解析器你就将你python.exe的路径放上去就行。

第三步:

  • 在终端输入 pyinstaller -D alien_invasion.py 这里要注意的是:.py文件是你的主程序
  • 以下就和单文件差不多了,我就不多解释了。

到此你就已经成功获得了一个.exe 的文件。