将python程序打包为exe可执行文件方法
Posted 三生有幸格格
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了将python程序打包为exe可执行文件方法相关的知识,希望对你有一定的参考价值。
将py打包为exe文件需要依赖pyinstaller第三方库
-F:打包后只生成单个exe格式文件; -D:默认选项,创建一个目录,包含exe文件以及大量依赖文件; -c:默认选项,使用控制台(就是类似cmd的黑框); -w:不使用控制台; -p:添加搜索路径,让其找到对应的库; -i:改变生成程序的icon图标。
1.单个py文件编译
打包完成会在当前目录生成一个disk文件夹,里面产生exe文件就是编译后的程序。
2.多个py文件编译
在需要打包的文件目录下运行cmd,输入以下命令来生成.spec文件
pyi-makespec 主文件.py
运行完成目录下会出现一个.spec文件
配置.spec文件
# -*- mode: python ; coding: utf-8 -*- block_cipher = None a = Analysis( [\'main.py\' \'E:\\Folder\\python\\chaoxing-main\\chaoxing-main\\api\\__init__.py\' #此处填写.py文件 \'E:\\Folder\\python\\chaoxing-main\\chaoxing-main\\api\\chaoxing.py\' #此处填写.py文件,自己的文件有几个就写几个,如果当前在目录下可以直接写文件名,如果在其他文件夹里,填写文件目录加文件名 \'E:\\Folder\\python\\chaoxing-main\\chaoxing-main\\utils\\__init__.py\' \'E:\\Folder\\python\\chaoxing-main\\chaoxing-main\\utils\\functions.py\'], pathex=[\'E:\\Folder\\python\\chaoxing-main\\chaoxing-main\'], #此列表为项目路径 binaries=[], datas=[( , ),( , )], #此处填写非py文件,多个文件用(),分割第一个参数是文件路径,第二个是打包后所在的路径 hiddenimports=[], hookspath=[], hooksconfig=, runtime_hooks=[], excludes=[], win_no_prefer_redirects=False, win_private_assemblies=False, cipher=block_cipher, noarchive=False, ) pyz = PYZ(a.pure, a.zipped_data, cipher=block_cipher) exe = EXE( pyz, a.scripts, [], exclude_binaries=True, name=\'main\', #程序exe的名称 debug=False, bootloader_ignore_signals=False, strip=False, upx=True, # 打包的时候进行压缩,False表示不压缩 console=True, #此处console=True表示,打包后的可执行文件双击运行时屏幕会出现一个cmd窗口,不影响原程序运行,如不需要执行窗口,改成False即可 disable_windowed_traceback=False, argv_emulation=False, target_arch=None, codesign_identity=None, entitlements_file=None, icon=\'icon.ico\', #程序图标,要绝对路径 ) coll = COLLECT( exe, a.binaries, a.zipfiles, a.datas, strip=False, upx=True, upx_exclude=[], name=\'main\', #程序文件夹名称 )
配置好之后
在当前目录cmd中执行命令
pyinstaller xxxx.spec
生成的文件在disk目录下,找到mian.exe 双击运行即可
参考链接:https://blog.csdn.net/qq_56418482/article/details/127338778
本文来自博客园,作者: 三生有幸格格,转载请注明原文链接:https://www.cnblogs.com/mylive/p/17498928.html
以上是关于将python程序打包为exe可执行文件方法的主要内容,如果未能解决你的问题,请参考以下文章
2020-05-23 pyinstaller 打包python项目为exe
2020-05-23 pyinstaller 打包python项目为exe