Python 程序封装-打包成exe程序

article/2025/10/2 23:34:57

Python 程序封装-打包成exe程序

    • 前言
    • 一、 Python 打包工具—Pyinstaller
    • 二、打包具体过程
      • 1. 打包成仅包含一个独立的exe程序
      • 2. 打包成包含文件夹的程序,内有相关的依赖库(推荐)
      • 3. 其他的打包命令
    • 三、注意事项

欢迎学习交流!
邮箱: z…@1…6.com
网站: https://zephyrhours.github.io/

前言

常用的软件都是带有操作界面的(Graphical User Interface,GUI),其目的就是在用户不需要看懂程序 底层代码的同时也可以进行软件相关功能的操作,更便于用户与程序的交互。随着Python逐渐成为一种流行编程工具的同时,程序打包也成为部分用户的需求,然而相关博客很少,而新手入门往往不得其所。其实很简单,下面笔者分享自己打包的过程,以供参考!

一、 Python 打包工具—Pyinstaller

PyInstaller 是一个可以将 Python 程序打包成一个独立可执行文件的软件包。它通过读取已经编写好的 Python 脚本,分析代码执行需要的模块和库,然后将其依赖库一同打包转成可以直接脱离于python环境下独立运行的程序,目前已经支持 在Windows、Linux 和 Mac OS 上运行。简单的理解就是,通过对程序脚本的打包(尤其是带有操作界面的程序),可以获得一个完整的软件。

下面笔者简单介绍一下window操作系统的打包命令和打包过程,具体如下:

  • 利用cmd命令进入python的安装路径,利用下面命令安装pyinstaller:
> cd D:\Program Files\Python37\Scripts   # 一般进入这个文件夹下进行安装就行
> pip install pyinstaller    # 打包工具安装命令

二、打包具体过程

下面是打包中常用命令,不同的命令之间可以进行组合,根据用户需求进行安排,具体命令如下:

-i 给应用程序添加图标
-F 只生成一个exe格式的文件
-D 创建一个目录,包含exe文件,但会依赖很多文件(默认选项)
-c 有黑窗口
-w 去掉黑窗口

1. 打包成仅包含一个独立的exe程序

程序打包具体过程:

  • 利用dos命令进入需要打包的程序文件夹下,下面是笔者的具体文件路径,具体操作命令如下:
> cd C:\Users\dream\Desktop\CSDN\ITAA_v1.0401.h.1  # 进入这个文件夹

在这里插入图片描述
如上图所示,在该需要打包的程序文件夹中,Main_ITAA.py就是我们程序的入口(在python中点击该程序就可以直接运行),下面我们将其打包成一个只有exe的可执行程序,具体命令如下:

pyinstaller -F -w -i logo.ico Main_ITAA.py

下面是打包命令执行后程序打包的编译过程,具体如下:
在这里插入图片描述
这时候我们会发现程序中多出来一个dist的文件夹,打包好的程序就放在这个文件夹下面,
在这里插入图片描述
下面我们看一下打包好的程序,点击就可以直接运行,其中图像的logo可以根据自己的需要自动设置。
在这里插入图片描述

2. 打包成包含文件夹的程序,内有相关的依赖库(推荐)

具体命令如下:

pyinstaller -D -c -i logo.ico Main_ITAA.py  # 有黑窗口,包含文件夹
pyinstaller -D -i logo.ico Main_ITAA.py  # 有黑窗口,包含文件夹(默认有黑窗口)

在这里插入图片描述
下面是打包完成的程序,一般该程序打包完成后,软件内部的我们自己建立的文件夹和python程序调用的程序需要放到打包好的程序文件下面才能运行,否则程序运行过程中容易出现错误,具体需要移动的文件及文件夹如下:

  • logo
  • help
  • data
  • models
  • svm-predict.exe
  • svm-scale.exe
    在这里插入图片描述
    下面就是打包完成后多出来的一个文件夹,打包程序在该文件夹下,上面的六个文件需要移动到该程序下
    在这里插入图片描述
    然后从中找到相关的程序Main_ITAA.exe应用程序,发送到桌面,就与我们常用程序没有什么区别了。
    在这里插入图片描述
    在这里插入图片描述
    点击运行效果如下:
    在这里插入图片描述
    程序完全运行,没有问题。

3. 其他的打包命令

下面是一些其他的打包程序,根据自己需要进行适当修改,具体如下:

  • 无黑窗口且程序带有logo的单独exe程序
pyinstaller -F -w -i logo.ico Main_ITAA.py
  • 有黑窗口且程序带有logo的单独exe程序
pyinstaller -F  -i logo.ico Main_ITAA.py
pyinstaller -F -c -i logo.ico Main_ITAA.py
  • 程序带有logo,生成程序包含文件夹(内有依赖库)
pyinstaller -D -i logo.ico Main_ITAA.py # 有黑窗口
pyinstaller -D -w -i logo.ico Main_ITAA.py  # 无黑窗口

三、注意事项

  • 最后可执行程序的图标必须是ico格式,否则无法显示出来;
  • 程序内部的logo不能是jpg格式(无法显示),要使用png格式(经测试,可以显示出来);
  • pyinstaller只能翻译python脚本,程序引用的其他程序或者相关文件在打包成一个exe程序时,往往会出现图标无法显示,相关文件无法加载错误,所有尽量打包成文件夹模式,方便后期外部文件的修改;
  • 如果程序出现黑框闪现情况,请使用保留黑窗的打包模式。

http://chatgpt.dhexx.cn/article/6djqY2Fh.shtml

相关文章

怎么python程序封装?此文详解

python程序封装1 步骤如下: (1)安装pyinstaller,可以直接在cmd命令行中,输入命令“pip install pyinstaller”,安装pyinstaller (2)进入py代码的保存目录,这里py代码放在“E:\python学习\python_work” (3)cmd,输入命令:e:,进入e盘 (4)继续输入:E:\pytho…

Python封装

在用新电脑做python的封装的时候,出现了一系列的问题。在这里简单写一下Python的封装的一些流程以及可能出现的问题和解决方法吧。 封装我选择的是pyinstaller 首先是安装pyinstaller:Python 默认并不包含 PyInstaller 模块,因此需要自行安…

python之类的封装

博主简介:原互联网大厂tencent员工,网安巨头Venustech员工,阿里云开发社区专家博主,微信公众号java基础笔记优质创作者,csdn优质创作博主,创业者,知识共享者,欢迎关注,点赞&#xff…

Python入门——函数封装

当工程量比较大时,我们可以采取“函数封装”的方法实现函数的重复使用,避免“重复造轮子”。 步骤 手动创建一个包,只需进行以下 2 步操作: 新建一个文件夹,文件夹的名称就是新建包的包名;在该文件夹中&…

Python学习基础笔记五十八——封装

封装:广义上的面向对象封装。代码的保护。面向对象的思想本身就是一种封装,只让自己的对象能调用自己类中的方法。 狭义的封装概念:面向对象的三大特性之一:让属性和方法都藏起来,不让你看见。 例1: clas…

Python必备封装基本代码~Python函数

大家好,我是辣条 最近不少粉丝通过文末找到辣条让我分享一些代码封装这一块的内容,今天他来了~ 一遍看不懂就收起来慢慢看,我写的还是很详细的,一定是能轻松拿捏住Python函数的,不过还请记得多多支持辣条,…

PMP学习笔记顺口溜

区分几种组织结构 老板项目为系统; 只有职能为职能; 多个部门多部门, 多个项目为项目 职能项目为矩阵,项强为强,项弱为弱; 项目职能一般大 :平衡 网络分散为虚拟

PMP学习笔记 零 启动

PMP 学习笔记 零 启动 我为什么要学习PMP 我是一个程序猿,别人让我做什么,我就去做什么,提出什么需求我就完成,但是渐渐的我不满足成为一个工具人,就开始也开始设计功能,和抛开产品经理独自完成一些需求&…

我的PMP学习考试心得

01看书学习是基础,但更需要深化理解 备考期间,我通读了PMBOK,认真观看了视频教程和小红书,按照班主任的要求循序渐进,慢慢掌握了基本的知识点。因为缺少基础,所以只能通过反复记忆,特别是利用每…

PMP学习群沙龙+抽奖活动

3月考试临近,学员们都在积极备考。 老师们当然也不会闲着。 这不,就给大家带来福利了。 针对我们的PMP学习群的福利活动即将上线。 进群填写信息即可获得抽奖机会一个,邀请进群一人再赠送一个抽奖机会。 百分百中奖 奖品: 超…

PMP 学习记录

1.预算和估算 2.挣值分析 1)三个指标: PV (planned value),计划值; AC(Actual Cost):实际成本, EV:Earned value,挣得的值&#xff1b…

pmp学习资料下载-pmp备考

PMP的全称是Project Management Professional,中文名称叫项目管理专业人士资格认证。 它是由美国项目管理协会(PMI)发起的,严格评估项目管理人员知识技能是否具有高品质的资格认证考试。其目的是为了给项目管理人员提供统一的行业标准。 目前PMP已经在…

PMP学习资料干货分享 - 干货满满

干货概览图 部分资料展示图 (1)IT 项目管理表格,五大过程组启动,规划,执行,监控,收尾全覆盖(共142张项目管理表格) (2)10章节的知识要点和做题思路 (简单扼要…

PMP学习总结(3)

PMP学习总结(3) 一、项目运行环境: 1.事业环境因素: (1)由来:项目团队不可控的,会对项目产生影响、限制或指令作用的各种条件 (2)特点:不可控,但需要遵守 &am…

PMP学习材料整理

PMBOK。官方指定用书,考试知识点来自PMBOK。 汪博士解读PMP考试。考试参考书,比PMBOK解析得更清楚,容易理解,贴近考试。 精讲课程中的PPT,课堂学习材料。 单元练习题。精讲之后,单元复习时,用于…

PMP学习计划

偶尔翻到2012年备考PMP定的计划,分享给大家作参考。 总目标:通过PMP 1、需要精度三遍 2、会做所有的练习题,能套用所有的公式 3、名字和典型过程会默写 4、每天至少保证两个小时的学习。 执行力要强,必须完成。 1、今晚完成PMP英…

万字心得,PMP学习考试那些事儿,看这篇文章就够了

声明:文章为原创,首发于知乎,链接:万字长文!PMP考试那些事儿,看这篇文章就够了 - 知乎 (zhihu.com)https://zhuanlan.zhihu.com/p/524966002 以下内容针对2022年PMP考试,即新考纲。 万字长文&…

pmp学习资料_201912期PMP学习内容汇总表

PMP考试,是一个体力活儿,需要奋战4个小时,答200道情景判断的选择题,而且......突破我们对考试的认知...... PMP学习,是一个需要付出时间和脑力的过程。我们需要从700多页书中学习49个过程、76个文件、122项工具技术&am…

怎样学好PMP

想要学好PMP,当然离不开学习官方指定教材《PMBOK指南》咯。 但是《PMBOK指南》的内容太广泛,思维很跳跃。所以我们不光要有《PMBOK指南》还要准备其他的教材,并制定我们自己的学习计划。 1.《PMBOK指南》 因为这是考试核心教材&#xff0c…

PMP学习总结

PMP学习总结 个人参加了QH的线下培训班,报班时间是2020年3月,线下班,有线上课程和线上练习题,中文版PMBOK(第六版)和他们自己的培训教材。费用2300(教学费用)3900(统一的…