Python项目打包成exe文件

栗子
栗子
发布时间:2026-10-15| 5人浏览过
原创

本文介绍了如何将Python项目打包为独立的exe执行文件。通过安装pyinstaller库,使用特定命令将包含main方法的脚本进行打包,最终在dist目录下生成可执行的exe文件,实现脱离IDE独立窗口运行。

前言

此前有用户反馈,其开发了一款终端交互小程序,希望摆脱IDE终端的限制,以独立窗口形式运行。只需将项目打包为exe可执行文件,即可在cmd环境中实现独立窗口的交互体验。

具体如何将Python项目打包为exe?下文将分步骤详细讲解操作流程。

环境依赖

首先需安装pyinstaller工具。


pip install pyinstaller -i https://pypi.douban.com/simple

项目打包

首先查看项目的部分代码结构。

接着观察项目在终端运行时的初始效果。

随后利用pyinstaller命令,将包含main方法的脚本进行打包处理。


pyinstaller -F main.py

打包过程


C:\Users\yi\PycharmProjects\txl>pyinstaller -F main.py
143 INFO: PyInstaller: 4.7
143 INFO: Python: 3.7.6
144 INFO: Platform: Windows-10-10.0.19041-SP0
145 INFO: wrote C:\Users\yi\PycharmProjects\txl\main.spec
162 INFO: UPX is not available.
165 INFO: Extending PYTHONPATH with paths
['C:\\Users\\yi\\PycharmProjects\\txl']
640 INFO: checking Analysis
641 INFO: Building Analysis because Analysis-00.toc is non existent
641 INFO: Initializing module dependency graph...
649 INFO: Caching module graph hooks...
696 INFO: Analyzing base_library.zip ...
4371 INFO: Caching module dependency graph...
4614 INFO: running Analysis Analysis-00.toc
4619 INFO: Adding Microsoft.Windows.Common-Controls to dependent assemblies of final executable
  required by c:\users\yi\appdata\local\programs\python\python37\python.exe
5046 INFO: Analyzing C:\Users\yi\PycharmProjects\txl\main.py
5049 INFO: Processing module hooks...
5050 INFO: Loading module hook 'hook-difflib.py' from 'c:\\users\\yi\\appdata\\local\\programs\\python\\python37\\lib\\site-packages\\PyInstaller\\hooks'...
5052 INFO: Loading module hook 'hook-encodings.py' from 'c:\\users\\yi\\appdata\\local\\programs\\python\\python37\\lib\\site-packages\\PyInstaller\\hooks'...
5253 INFO: Loading module hook 'hook-heapq.py' from 'c:\\users\\yi\\appdata\\local\\programs\\python\\python37\\lib\\site-packages\\PyInstaller\\hooks'...
5256 INFO: Loading module hook 'hook-pickle.py' from 'c:\\users\\yi\\appdata\\local\\programs\\python\\python37\\lib\\site-packages\\PyInstaller\\hooks'...
5260 INFO: Loading module hook 'hook-xml.py' from 'c:\\users\\yi\\appdata\\local\\programs\\python\\python37\\lib\\site-packages\\PyInstaller\\hooks'...
5529 INFO: Looking for ctypes DLLs
5529 INFO: Analyzing run-time hooks ...
5532 INFO: Including run-time hook 'c:\\users\\yi\\appdata\\local\\programs\\python\\python37\\lib\\site-packages\\PyInstaller\\hooks\\rthooks\\pyi_rth_pkgutil.py'
5535 INFO: Including run-time hook 'c:\\users\\yi\\appdata\\local\\programs\\python\\python37\\lib\\site-packages\\PyInstaller\\hooks\\rthooks\\pyi_rth_inspect.py'
5542 INFO: Looking for dynamic libraries
5721 INFO: Looking for eggs
5722 INFO: Using Python library c:\users\yi\appdata\local\programs\python\python37\python37.dll
5722 INFO: Found binding redirects:
[]
5726 INFO: Warnings written to C:\Users\yi\PycharmProjects\txl\build\main\warn-main.txt
5765 INFO: Graph cross-reference written to C:\Users\yi\PycharmProjects\txl\build\main\xref-main.html
5782 INFO: checking PYZ
5783 INFO: Building PYZ because PYZ-00.toc is non existent
5783 INFO: Building PYZ (ZlibArchive) C:\Users\yi\PycharmProjects\txl\build\main\PYZ-00.pyz
6170 INFO: Building PYZ (ZlibArchive) C:\Users\yi\PycharmProjects\txl\build\main\PYZ-00.pyz completed successfully.
6182 INFO: checking PKG
6182 INFO: Building PKG because PKG-00.toc is non existent
6182 INFO: Building PKG (CArchive) main.pkg
7800 INFO: Building PKG (CArchive) main.pkg completed successfully.
7803 INFO: Bootloader c:\users\yi\appdata\local\programs\python\python37\lib\site-packages\PyInstaller\bootloader\Windows-64bit\run.exe
7803 INFO: checking EXE
7803 INFO: Building EXE because EXE-00.toc is non existent
7804 INFO: Building EXE from EXE-00.toc
7805 INFO: Copying bootloader EXE to C:\Users\yi\PycharmProjects\txl\dist\main.exe
7897 INFO: Copying icon to EXE
7897 INFO: Copying icons from ['c:\\users\\yi\\appdata\\local\\programs\\python\\python37\\lib\\site-packages\\PyInstaller\\bootloader\\images\\icon-console.ico']
7996 INFO: Writing RT_GROUP_ICON 0 resource with 104 bytes
7996 INFO: Writing RT_ICON 1 resource with 3752 bytes
7997 INFO: Writing RT_ICON 2 resource with 2216 bytes
7997 INFO: Writing RT_ICON 3 resource with 1384 bytes
7997 INFO: Writing RT_ICON 4 resource with 37019 bytes
7997 INFO: Writing RT_ICON 5 resource with 9640 bytes
7998 INFO: Writing RT_ICON 6 resource with 4264 bytes
7998 INFO: Writing RT_ICON 7 resource with 1128 bytes
8002 INFO: Copying 0 resources to EXE
8003 INFO: Emedding manifest in EXE
8004 INFO: Updating manifest in C:\Users\yi\PycharmProjects\txl\dist\main.exe
8007 INFO: Updating resource type 24 name 1 language 0
8011 INFO: Appending PKG archive to EXE
9702 INFO: Building EXE from EXE-00.toc completed successfully.
 
C:\Users\yi\PycharmProjects\txl>

执行完毕后,dist目录中会生成exe文件,这正是我们需要的目标文件。

双击该exe文件进行运行测试。

 

总结

此次操作主要作为记录,无额外复杂总结。

到此这篇关于Python项目打包成exe文件的文章就介绍到这了,更多相关Python打包成exe文件内容请搜索本站以前的文章或继续浏览下面的相关文章希望大家以后多多支持本站!

相关标签:

免责声明:本文内容仅供参考,不代表本站观点。转载或引用请注明出处。

Python 相关产品和应用

全部下载
Selenium

Selenium

4.51.0 · Windows

用于浏览器自动化和 Web 测试的 Python 工具。

scikit-learn

scikit-learn

1.9.1 · Windows

常用 Python 机器学习算法与模型评估工具库。

Black

Black

26.10.1 · Windows

强调一致性的 Python 自动代码格式化工具。

Ruff

Ruff

0.17.1 · macOS

由 Rust 编写的高速 Python 代码检查和格式化工具。

pytest

pytest

9.1.1 · Windows

简洁而强大的 Python 自动化测试框架。

FastAPI

FastAPI

0.146.0 · Windows

高性能 Python API 框架,支持类型提示和自动接口文档。

Flask

Flask

3.1.3 · Windows

轻量灵活的 Python Web 应用框架。

Django

Django

6.1.2 · Windows

成熟的 Python Web 框架,适合构建内容站点和业务系统。

Spyder

Spyder

6.1.7 · Windows

面向科学计算与数据分析的 Python 集成开发环境。

SciPy

SciPy

1.18.1 · Windows

面向科学、工程和技术计算的 Python 算法库。