Python项目打包成可执行的exe文件
Posted 剑客阿良_ALiang
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Python项目打包成可执行的exe文件相关的知识,希望对你有一定的参考价值。
目录
前言
之前有人私信我,他写了一个在终端交互的小程序,希望可以不在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文件,就是我们要的。
双击执行一下
总结
没啥总结的,做个记录。
分享:
当你年轻时,以为什么都有答案,可是老了的时候,你可能又觉得其实人生并没有所谓的答案。——《天使之城》
如果本文对你有用的话,点个赞吧,谢谢!
以上是关于Python项目打包成可执行的exe文件的主要内容,如果未能解决你的问题,请参考以下文章
python 学习如何将Python脚本打包成可执行的exe文件#520表白代码