python html5 bootstrap 视频教程
德云社区 门户 行业资讯 行业标准 智控标准 查看内容

pyinstaller-分发打包Python .py成.exe文件 自动收集依赖.pyd .pyc .pyo

2018-6-4 20:45| 发布者: digitser| 查看: 3942| 评论: 0|原作者: Python

摘要: pyinstaller-分发打包Python .py成.exe文件 自动收集依赖.pyd .pyc .pyo pyinstaller 可把 *.py 文件打包成一个可执行 *.exe 文件 (或一个文件夹)。当然,首先得安装 CPython 实现,pyinstaller 模块及其相关依赖包 ...
自动立式分页纸箱赋码系统 ── 全自动 专业 立式分页 瓦楞纸 水性油墨 贴标 喷码 检测系统
PyInstaller-分发打包Python .py成.exe文件 自动收集依赖.pyd .pyc .pyo

PyInstaller 可把 *.py 文件打包成一个可执行 *.exe 文件 (或一个文件夹)。当然,首先得安装 CPython 实现,PyInstaller 模块及其相关依赖包。


PyInstaller 是 Python 语言环境下,把 *.py 文件分发-打包成可执行 *.exe 文件的一个著名流行开源框架,采用 C 和 Python 混合编程而成。


PyInstaller 帮助文档编制很详细,其基本用法较简单,不看文档编制也能轻松学会使用。但要深入,最好适当研究一下其工作原理及源代码。


智能编辑重构 批处理式 "数字 Python IDE" 集成开发环境 (集成快速高效 Cython PyInstaller 批处理小程序)

http://dt.digitser.cn/zh-CN/ide/idepy/index.html


乐数软件开发的 数字 IDE 系列已集成 PyInstaller 分发-打包工具,Cython 编译工具。


PyInstaller 结合 Cython 生成 *.pyd 文件,再使用 *.pyc *.pyo 文件,分发-打包效果会更理想 (在采用二进制加密源代码、减小体积前提条件下,提高运行性能)。


若不想直接分发打包成 *.exe 可执行文件,则需手动集成相关 Python 依赖模块。具体有哪些 Python 依赖模块,可参考 PyInstaller 生成 *.exe 之前输出的 EXE-00.toc、Analysis-00.toc、COLLECT-00.toc、PKG-00.toc、PYZ-00.toc 文件内容。


PyInstaller 批量打包分布工具

依赖

编写好的 Python 脚本 *.py *.pyw 文件如要在没有安装 Python 执行环境的机器上运行,可将脚本分发-打包成带有相关依赖文件的 *.exe 可执行文件。


PyInstaller 打包依赖文件情况由脚本内容确定,它会一次性自动收集符合源代码要求的所有文件,而不用一个个去单独查找-拷贝。若依赖文件在 Python 脚本 *.py *.pyw 源代码文件子进程或 __import__ 语句中,则 PyInstaller 不会自动收集,需单独手动收集 (一般来说,很多图标、图像文件也需单独收集)。


注意:PyInstaller 分发-打包 Python 脚本 *.py *.pyw 源代码文件后,会将 Python 运行环境变为 PyInstaller 虚拟环境。打包后,源代码文件中的相对路径设置也会发生改变,所以,请在编写脚本时考虑打包后的相对路径变化;否则,点击执行 *.exe 文件时会提示找不到 xxx 模块、xxx 模块不存在、某些图片不显示、启动画面一闪而过就自动关闭、等问题。


打包后的 *.exe 可执行文件具体支持哪些平台,取决由打包前的 *.py *.pyw 文件源代码,及依赖包情况。


用法

01、基本用法

参考:pyinstaller pyi-makespec 生成 *.exe 文件使用教程 相关参数详解

  1. pyinstaller --key 0123456789abcdef -F -w -i ../../images/**.ico **.py
复制代码

02、扩展用法

  1. pyi-makespec --key 0123456789abcdef -F -w -i ../../images/**.ico **.py

  2. pyinstaller **.spec
复制代码

Analysis-00.toc

Analysis-00.toc 文件包含了打包分发 *.exe 文件 (除 *.exe.manifest 文件外) 的大部分配置信息。


譬如:Python 所有依赖模块、base_library.zip 文件 (里面包含了一些 Python 模块),另外,还包括 *.dll 文件、*.pyd 文件、等相关配置信息。


COLLECT-00.toc

COLLECT-00.toc 文件包含了打包分发 *.exe 文件的最终信息。


譬如:Python 所有依赖模块、base_library.zip 文件 (里面包含了一些 Python 模块),另外,还包括*.dll 文件、*.exe.manifest 文件、*.pyd 文件、等相关配置信息。


PKG-00.toc

PKG-00.toc 文件包含了一些 Python 依赖模块、*.exe.manifest 文件、PyInstaller 文件 (名称,路径,类型) 等相关配置信息。


PYZ-00.toc

PYZ-00.toc 文件包含了所有常用 Python 依赖模块 (名称,路径,类型)。


扫一扫关注 德云社区 微信公众号

版权声明:
本文为独家原创稿件,版权归 德云社区,未经许可不得转载。

路过

雷人

握手

鲜花

鸡蛋
AI人工智能 语音助理 人工翻译 教程

相关阅读

最新评论

CSS3 官方中文文档编制 手册教程 人工翻译 更新日志
CSS3 官方中文文档编制 手册教程 人工翻译 更新日志 CSS3 中文文档编制采用机器辅助 + 全人工翻译,完全采用 数字翻译 的文档翻译流程进行汉化 (未采用任何第 3 方工具),[905/2022-07-31]
CSS3 官方中文文档编制 手册教程 帮助文件 人工翻译
CSS3 官方中文文档编制 手册教程 帮助文件 人工翻译 CSS3 中文文档编制采用机器辅助 + 全人工翻译,完全采用 数字翻译 的文档翻译流程进行汉化 (未采用任何第 3 方工具),[1013/2022-07-31]
SolidWorks 2020 非对称Conic Rho圆角 抽壳出现模型穿刺
SolidWorks 2020 非对称Conic Rho圆角 抽壳出现模型穿刺 标准对称圆角最常用,但有时偶尔也会用到非对称圆角。 特别是模具、五金、电子、手饰、汽车、家具、玩具、等对圆[888/2022-05-25]
NumPy 1.22 官方中文文档编制 手册帮助 更新日志
NumPy 1.22 官方中文文档编制 手册帮助 更新日志 以后不再上传 en-US 官方原版文档编制,目前上传的最新 zh-CN 人工翻译版本为 NumPy 1.22。 NumPy 1.22 中文文档编制采用[580/2022-05-22]
NumPy 1.22 官方中文文档编制 手册帮助 全人工翻译
NumPy 1.22 官方中文文档编制 手册帮助 全人工翻译 以后不再上传 en-US 官方原版文档编制,目前上传的最新 zh-CN 人工翻译版本为 NumPy 1.22。 NumPy 1.22 中文文档编制采[655/2022-05-22]
Pillow 9.1.1 官方中文文档编制 手册帮助 更新日志
Pillow 9.1.1 官方中文文档编制 手册帮助 更新日志 以后不再上传 en-US 官方原版文档编制,目前上传的最新 zh-CN 人工翻译版本为 Pillow 9.1.1。 Pillow 9.1.1 中文文档编[624/2022-05-22]
Pillow 9.1.1 官方中文文档编制 手册帮助 全人工翻译
Pillow 9.1.1 官方中文文档编制 手册帮助 全人工翻译 以后不再上传 en-US 官方原版文档编制,目前上传的最新 zh-CN 人工翻译版本为 Pillow 9.1.1。 Pillow 9.1.1 中文文档[577/2022-05-22]
PyMuPDF 1.19.6 官方中文文档编制 手册帮助 更新日志
PyMuPDF 1.19.6 官方中文文档编制 手册帮助 更新日志 以后不再上传 en-US 官方原版文档编制,目前上传的最新 zh-CN 人工翻译版本为 PyMuPDF 1.19.6。 PyMuPDF 1.19.6 中文[1160/2022-05-22]
PyMuPDF 1.19.6 官方中文文档编制 手册帮助 全人工翻译
PyMuPDF 1.19.6 官方中文文档编制 手册帮助 全人工翻译 以后不再上传 en-US 官方原版文档编制,目前上传的最新 zh-CN 人工翻译版本为 PyMuPDF 1.19.6。 PyMuPDF 1.19.6 中[993/2022-05-22]
Qt 6.3.0 官方中文文档编制 手册教程 帮助文件 人工翻译
Qt 6.3.0 官方中文文档编制 手册教程 帮助文件 人工翻译 以后不再上传 en-US 官方原版文档编制,目前上传的最新 zh-CN 人工翻译版本为 Qt 6.3.0。 Qt 6.3.0 中文文档编制[2443/2022-05-02]
Qt 6.3.0 官方中文文档编制 手册教程 人工翻译更新日志
Qt 6.3.0 官方中文文档编制 手册教程 人工翻译更新日志 以后不再上传 en-US 官方原版文档编制,目前上传的最新 zh-CN 人工翻译版本为 Qt 6.3.0。 Qt 6.3.0 中文文档编制采[2028/2022-05-02]
MAGIX Music Maker Premium - 易学易用 功能强大的可视化编曲软件
MAGIX Music Maker Premium - 易学易用 功能强大的可视化编曲软件 MAGIX Music Maker 是德国 Magix 出品的可视化编曲软件,功能强大、使用简单、容易上手。 MAGIX Music Ma[1737/2022-04-11]
MQTT - 消息队列遥测技术 M2M机器到机器 IoT物联网 通信协议
MQTT - 消息队列遥测技术 M2M机器到机器 IoT物联网 通信协议 MQTT 是 Message Queuing Telemetry Transport 的缩写,中文译为消息队列遥测传输。 MQTT 是 ISO 标准 (ISO/I[615/2022-02-24]
数字 Python IDE 2022 注册机 注册码生成器 附详细破解方法
数字 Python IDE 2022 注册机 注册码生成器 附详细破解方法 数字 Python IDE 目前还在不断研发 进步中,虽不太成熟,但其新理念很有特色 特别适于多版本 多文档 多工程并行[679/2022-02-01]
数字翻译 2022 注册机 注册码生成器 内存破解器 附详细用法
数字翻译 2022 注册机 注册码生成器 内存破解器 附详细用法 数字翻译目前还在不断研发 进步中,虽不太成熟,但其新理念很有特色 特别适于 HTML 文档本地化 (面向高精度 超[633/2022-02-01]

Archiver|Sitemap|小黑屋|德云社区   

GMT+8, 2024-4-26 11:18 , Processed in 0.036300 second(s), 27 queries .

工业和信息化部: 粤ICP备14079481号-2

技术支持 乐数软件     版权所有 © 2014-2021 德云社区    

返回顶部