加载中
加载中
表情图片
评为精选
鼓励
加载中...
分享
加载中...
文件下载
加载中...
修改排序
加载中...
如何将python3.6软件的py文件打包成exe程序(教程)
HSH2025/04/19原创 破解版软件下载 IP:山西
中文摘要
文章主要探讨了两种打包工具:cx_Freeze和pyinstaller。
‌cx_Freeze‌:此方法适用于Python 3.3版本,但对于更高版本的Python(如3.6.2),cx_Freeze尚未更新至兼容版本。文章提及了在尝试使用cx_Freeze时遇到的问题,如找不到cxFreeze.bat文件,以及通过运行python cxfreeze-postinstall命令来解决的方案。
‌pyinstaller‌:鉴于cx_Freeze的局限性,文章转向了pyinstaller作为打包工具。它详细介绍了如何下载、安装pyinstaller,以及使用pyinstaller将Python脚本打包成exe文件的过程。这包括下载适用于Python版本的pyinstaller(注意选择稳定版或不稳定版,以及操作系统类型),通过运行python setup.py install命令进行安装,以及使用pyinstaller -F 文件名.py命令进行打包。文章还介绍了pyinstaller的常用参数,如-F(打包成一个exe文件)、-w(使用窗口,无控制台)、-c(使用控制台,无窗口)、-D(创建一个目录,包含exe和其他依赖文件),以及如何通过--icon=图标路径参数更改生成的exe程序的图标。
Abstract
The article mainly discusses two packaging tools: cx_Freeze and pyinstaller.
‌cx_Freeze‌: This method is suitable for Python version 3.3. However, for newer Python versions (such as 3.6.2), cx_Freeze has not yet been updated to a compatible version. The article mentions issues encountered when attempting to use cx_Freeze, such as not finding the cxFreeze.bat file, and solving the problem by running the python cxfreeze-postinstall command.
‌pyinstaller‌: Due to the limitations of cx_Freeze, the article turns to pyinstaller as the packaging tool. It provides detailed instructions on how to download and install pyinstaller, as well as how to use pyinstaller to package Python scripts into exe files. This includes downloading the pyinstaller suitable for the installed Python version (paying attention to choose between the stable or unstable version, as well as the operating system type), installing it by running the python setup.py install command, and packaging the script by using the 


      在我们完成一个Python项目或一个程序时,希望将Python的py文件打包成在Windows系统下直接可以运行的exe程序。在浏览网上的资料来看,有利用pyinstaller和cx_Freeze进行打包的方法。关于cx_Freeze打包的方由于方法主要是可以用于Python3.3版本的,高于该版本的Python无法使用。在我尝试的过程中,碰到的一个问题是:

安装cx_Freeze-4.3.3,找不到cxFreeze.bat

解决的方法是,在cmd命令行操作下,切换至放置cx_Freeze-4.3.3文件的Python安装目录下scripts目录下,使用以下代码自动生成:


Python
python cxfreeze-postinstall


由于我安装的Python版本是3.6.2版本的,版本相对较新,cx_Freeze还没有更新版本至3.6版本。在我尝试很多次数失败后,决定采用pyinstaller来进行文件打包的方法。


下载pyinstaller

采用命令行操作的办法

在cmd命令行中,输入代码:

Python
pip install pyinstaller

或者采用更新、升级的方法:

Python
pip install --upgrade pyinstaller

采用下载文件+cmd操作的办法

首先,前往PyInstaller网站下载:http://www.pyinstaller.org/downloads.html

upload_downloader_1745047901255_30572156.bmp

      下载时,要注意你安装的Python是多少版本的,有稳定版和不稳定版的,Python3.6只有不稳定版本的。其中绿色方框的是适用于linux操作系统下的,红色方框是适用于Windows系统下的。

进行解压缩、放置和安装

下载后,将压缩文件解压缩在Python安装目录下,进入该文件:

upload_downloader_1745047903214_77882373.bmp

该目录中含有setup.py,同时在cmd中进入该目录:

upload_downloader_1745047903481_81941086.bmp

输入命令:

Python
python setup.py install

并按下回车键,会看到代码迅速执行,会进行安装pyinstaller,显示如下状态,看到“Finished processing dependencies for PyInstaller==3.3.dev0+41c426f6d”,即安装成功:

upload_downloader_1745047903786_16514092.bmp

使用pyinstaller打包py文件成exe程序

打包文件成exe程序

将cmd的目录切换至(命令:cd 文件路径(注意空格))需要打包的py文件目录下:

upload_downloader_1745047903044_62159899.bmp

并输入代码,格式为使用命令:pyinstaller -F 文件名(带后缀py):

Python
pyinstaller -F test.py

常用参数 说明:
–icon=图标路径
-F 打包成一个exe文件
-w 使用窗口,无控制台
-c 使用控制台,无窗口
-D 创建一个目录,里面包含exe以及其他一些依赖性文件
pyinstaller -h 来查看参数
回车后,代码迅速操作,直到操作结束。

upload_downloader_1745047903465_16011640.jpeg



返回目标文件目录,发现该目录下生成了.spec文件test.spec:

upload_downloader_1745047903408_45199871.bmp

打包好的exe文件,在同目录的dist文件中:

upload_downloader_1745047903546_92098664.bmp

由此,py文件打包好为exe文件。

pyinstaller 改变生成exe程序的图标

Python
pyinstaller -F --icon=my.ico test.py

my.ico 是一个图标名,和当前的test.py文件在同一个目录下


[修改于 13天23时前 - 2025/04/19 20:08:13]

来自:计算机科学 / 软件综合
2
3
新版本公告
~~空空如也
yushu
13天23时前 IP:浙江
943403

不错,学到了


引用
评论
加载评论中,请稍候...
200字以内,仅用于支线交流,主线讨论请采用回复功能。
折叠评论
HSH作者
11天23时前 修改于 11天22时前 IP:山西
943452

另外再给大家提供一个火箭发动机推力计算器 ai写的(仅供娱乐)

https://cloudstudio.net/a/26436878001999872?channel=share&sharetype=URL

IMG_0852.jpeg

IMG_0854.jpeg

代码

attachment icon文本 2.txt11.59KBTXT1次下载

attachment icon文本.txt9.92KBTXT1次下载


引用
评论
3
加载评论中,请稍候...
200字以内,仅用于支线交流,主线讨论请采用回复功能。
折叠评论

想参与大家的讨论?现在就 登录 或者 注册

所属专业
上级专业
同级专业
HSH
进士 机友 笔友
文章
20
回复
115
学术分
0
2025/01/19注册,1时48分前活动

新型水火箭创作者 代码、单片机、软件 一个心怀壮志的人,一个爱国的人 SpaceX的信服者和心怀颠复者 相信每一个拥有星辰大海的人 柳暗花明终将来临 Star pass的始创者 国际火箭发射栏主

主体类型:个人
所属领域:无
认证方式:手机号
IP归属地:山西
插入公式
评论控制
加载中...
文号:{{pid}}
投诉或举报
加载中...
{{tip}}
请选择违规类型:
{{reason.type}}

空空如也

笔记
{{note.content}}
{{n.user.username}}
{{fromNow(n.toc)}} {{n.status === noteStatus.disabled ? "已屏蔽" : ""}} {{n.status === noteStatus.unknown ? "正在审核" : ""}} {{n.status === noteStatus.deleted ? '已删除' : ''}}
  • 编辑
  • 删除
  • {{n.status === 'disabled' ? "解除屏蔽" : "屏蔽" }}
我也是有底线的