Python如何生成exe文件?用Pycharm一步步带你学(超详细、超贴心)
作者:Nire_谒羽 发布时间:2023-09-08 04:46:20
目的描述:
为了让没有安装Python的人也能使用我们编写的.py文件,我们需要将编写好的Python程序生成.exe文件。
第一步 下载pyinstaller
pyinstaller插件是Python自带的插件,用于为我们写好的代码进行打包,最终自动合成.exe文件。
在Pycharm界面的最下面,你可以看到Terminal,选择这个选项,这就是一个终端界面。
在此界面写输入指令: pip install pyinstaller 对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.
常见错误提示二:
NoneType’ object has no attribute 'bytes
第二步 使用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文件运行起来很有可能会有各种各样奇葩的问题:比如闪退、双击后直接消失了、程序莫名其妙地崩掉等。
来源:https://blog.csdn.net/Nire_Yeyu/article/details/10468388


猜你喜欢
- 本文学习如何在Golang程序中执行Shell命令(如,ls,mkdir或grep),如何通过stdin和stdout传入I/O给正在运行的
- php代码实现读取文件头判断文件类型,支持图片、rar、exe等后缀。案例:<?php $filename = "11.jp
- dict.setdefault(key, default=None) --> 有key获取值,否则设置 key:default,并返回
- 一。首先,添加如下存储过程CREATE PROCEDURE dbo.ChangeObjectOwner @Ol
- 启用Ad Hoc Distributed Queries:exec sp_configure 'show advanced opti
- 在这里,我不打算介绍使用SQL Server的窍门,也不能提供一个包治百病的方案,我所做的是总结一些经验----关于如何形成一个好的设计。这
- 在Windows下使用VSCode编译运行,都出现中文乱码的问题,今天我就遇见了这种情况,上网搜了半天也没有找到正确的解决方法,现将我把我的
- 需求需要检查多个端口是否开放,没有找到第三方工具和服务来快速测通,就自己用python写了个脚本.原理是通过telnet来实现的,仅支持tc
- 简介到目前为止,我们查阅anaconda的官网可发现,由于目前Anaconda没有支持arm架构的版本,在M1芯片Mac上安装的Anacon
- [PHP] ; PHP还是一个不断发展的工具,其功能还在不断地删减 ; 而php.ini的设置更改可以反映出相当的变化,
- 1. NumPy安装使用pip包管理工具进行安装$ sudo pip install numpy使用pip包管理工具安装ipython(交互
- PIL:使用python自带图像处理库读取出来的图片格式numpy:使用python-opencv库读取出来的图片格式tensor:pyto
- 一、字符串的本质1.字符串的定义golang中的字符(character)串指的是所有8比特位字节字符串的集合,通常(非必须)是UTF-8&
- 用到的 Pygame 函数贪吃蛇小游戏用到的函数 功能描述init()初始化 pygamedisplay.set_mode()以元
- 最近在OpenCV-Python接口中使用cv2.findContours()函数来查找检测物体的轮廓。根据网上的 教程,Python&nb
- wxPython是Python语言的一套优秀的GUI图形库。允许Python程序员很方便的创建完整的、功能键全的GUI用户界面。 wxPyt
- 从txt种获取数据 并且通过动态曲线显示import numpy as np import matplotlib.pyplot as plt
- 本文实例讲述了Python图像处理实现两幅图像合成一幅图像的方法。分享给大家供大家参考,具体如下:将两幅图像合成一幅图像,是图像处理中常用的
- 导言Bootstrap 轮播(Carousel)插件是一种灵活的响应式的向站点添加滑块的方式。除此之外,内容也是足够灵活的,可以是图像、内嵌
- 方法超级简单,把时间格式化一下就好了,直接奉上代码function transDate() { var $time