首页 > 编程语言 >Python - 使用pyinstaller如何打包多个py文件

Python - 使用pyinstaller如何打包多个py文件

时间:2024-10-09 15:50:51浏览次数:8  
标签:文件 pyinstaller Python py -- data 打包

0.前言:

为了更好的管理python代码,经常我们需要把独立的功能/类写成一个单独的py文件,以方便查阅和读取修改。一般我们使用pyinstaller打包只是打包单一文件即可。但是打包多个文件就比较复杂

 

 

正文:

1.我的文件结构如图。一个主文件,一个模块文件、还有两个图标文件

命令添加:

pyinstaller --onefile --add-data "data.txt;." --add-data "other_file.py;." main.py
  • --onefile: 将所有内容打包到一个可执行文件中。
  • --add-data "data.txt;.": 将 data.txt 文件包含在可执行文件中。
  • --add-data "other_file.py;.": 将 other_file.py 文件包含在可执行文件中。

例:pyinstaller -F -i favicon_1.ico --onefile --add-data "jb_bak_2_wutou.py;." -w tk_jb_request.py

 

spec的文件添加:

pyinstaller --name main --onefile --windowed --icon=img_s.ico main.py

原理还是一样的,第一次打包,使用 PyInstaller 来生成初始的 .spec 文件

  • --name:生成出来的exe程序名
  • --onefile:将所有内容打包到一个可执行文件中。
  • --windowed:对于 Windows GUI 应用程序,不显示控制台窗口。
  • --icon:打包图标

用编辑器打开这个.spec文件:

 编辑.spec文件,只需要修改个地方即可,修改完后关闭保存

 

修改完后在进行打包,pyinstaller 文件名.spec即可

 

关键配置项详解
Analysis

pathex:包含脚本的搜索路径。
binaries:需要包含的额外二进制文件。
datas:需要包含的额外数据文件。
hiddenimports:需要手动指定的隐藏导入模块。
hookspath:自定义的hook文件路径。
runtime_hooks:运行时需要的hook文件。


PYZ

用于生成包含所有纯Python模块的压缩包。

EXE

name:生成的可执行文件名称。
console:是否显示控制台窗口(Windows)。
debug:是否生成调试模式的可执行文件。
upx:是否使用UPX压缩可执行文件。

COLLECT

用于收集所有打包的文件,生成最终的分发文件夹。

 

标签:文件,pyinstaller,Python,py,--,data,打包
From: https://www.cnblogs.com/xiaolintongxue1/p/18454450

相关文章

  • 使用python对交换机进行排障自动化运维(锐捷)
    importglobimporttelnetlibimportrefromdatetimeimportdatetimefromtimeimportsleepimportpandasaspdimportosimporttimefrommatplotlibimportpyplotasplt#Telnet连接函数defconnect_telnet(hostname,username,password):  try:  ......
  • 基于yolov10的花卉识别检测,支持图像、视频和摄像实时检测【pytorch框架、python】
    更多目标检测和图像分类识别项目可看我主页其他文章功能演示:基于yolov10的花卉识别检测系统,支持图像、视频和摄像实时检测【pytorch框架、python】_哔哩哔哩_bilibili(一)简介基于yolov10的花卉识别检测系统是在pytorch框架下实现的,这是一个完整的项目,包括代码,数据集,训练好的......
  • 用python语言输出乘法口诀表
    乘法口诀表是我们非常熟悉的一个东西,并且通过图片可以看出其形状和我们前面打印的直角三角形是一样的,这也是最简单的一种三角形的打印方式。那我们只需要在输出的时候做文章即可,即将之前的“*”改变为表达式。接下来请看代码:foriinrange(1,10):forjinrange(1,i+1)......
  • 如何用python语言打印菱形?
    上一篇内容,我们打印了各种三角形,今天我们一起看看如何打印出菱形?其实我们可以对菱形进行一个拆分,如下图所示:上半部分是一个等腰三角形,下半部分是一个倒着的等腰三角形的前面再有一个空白三角形。这样分解开来,我们不难发现,有两部分都是我们写过的,只有倒三角没有写过,但是也不难......
  • (2024最新毕设合集)基于SpringBoot的乡村书屋小程序-31881|可做计算机毕业设计JAVA、PHP
    摘要随着信息技术的快速发展和互联网的广泛普及,数字化服务的需求不断增长,乡村书屋作为传统的文化服务机构也需要适应这一变革。本研究将使用Java开发技术,通过springboot作为框架,结合微信小程序,和MySQL作为数据存储的技术,开发一套功能齐备可移动的乡村书屋小程序,旨在提升乡......
  • python静默活体检测接口集成-人脸识别API-人脸认证
    静默活体检测是一种不需要用户主动配合(如眨眼、点头等)的活体检测技术,通常通过摄像头采集用户的人脸图像,结合计算机视觉与AI算法来判断用户是否为真人。这项技术被广泛应用于身份验证、金融交易安全、智能门禁等领域。确定接口供应商和接口规范在集成静默活体检测功......
  • python/NumPy库的使用
    1.NumPy的主要特点:高性能的多维数组对象:NumPy的核心是ndarray,它是一个高性能的多维数组对象。广播功能:NumPy提供了广播(broadcasting)功能,允许不同形状的数组进行数学运算。集成C/C++代码:NumPy可以无缝集成C/C++代码,提高性能。广泛的数学函数库:提供了大量的数学函数,包括线性代数......
  • 基于python+flask框架的研招信息管理和预测系统(开题+程序+论文) 计算机毕设
    本系统(程序+源码+数据库+调试部署+开发环境)带论文文档1万字以上,文末可获取,系统界面在最后面。系统程序文件列表开题报告内容研究背景随着高等教育普及率的提升和就业竞争的加剧,越来越多的学生选择继续深造,报考研究生的人数逐年攀升。然而,研究生招生信息的管理和获取却面临......
  • 基于python+flask框架的中医古方名方信息管理系统(开题+程序+论文) 计算机毕设
    本系统(程序+源码+数据库+调试部署+开发环境)带论文文档1万字以上,文末可获取,系统界面在最后面。系统程序文件列表开题报告内容研究背景中医作为中华民族的传统医学,承载着千年的智慧与经验。在浩瀚的中医典籍中,古方名方犹如璀璨的星辰,闪烁着独特的光芒。这些古方名方不仅蕴含......
  • 基于python+flask框架的医院门诊预约挂号系统(开题+程序+论文) 计算机毕设
    本系统(程序+源码+数据库+调试部署+开发环境)带论文文档1万字以上,文末可获取,系统界面在最后面。系统程序文件列表开题报告内容研究背景随着医疗技术的不断进步和人们健康意识的日益增强,医院门诊的就诊需求呈现出快速增长的趋势。传统的挂号方式往往存在排队时间长、挂号效率......